In ActiveFacts you have a one_to_one (sorta what has_one is, but symmetrical, you just say it on one end and you get the other end for free), and has_one, which is sort what belongs_to is, except it also creates the symmetric has_many on the other model.
You never need to say has_many, it comes for free. Clifford Heath. On 12/01/2009, at 5:41 PM, Ben Hoskings wrote: > Yep. > > If it's a 1-n relationship (as opposed to an n-n), the model with > the foreign key is the one that belongs_to the other model. > > Ben Hoskings > > > On 12/01/2009, at 4:06 PM, Ryan Bigg wrote: > >> A status in your example would "has_many" comments, as many >> comments can have the same status. Therefore, a comment would >> belongs_to a status. >> ----- >> Ryan Bigg >> Freelancer >> http://frozenplague.net >> >> >> >> >> >> >> >> On 10/01/2009, at 11:41 AM, Matt wrote: >> >>> That's not a great case for the has_one association because as you >>> pointed out, the real world usage probably isn't there. >>> >>> Here's a couple for you >>> >>> class Student < ActiveRecord::Base >>> # so in here, there's an id, name for the student and any other >>> details they may have >>> has_one :locker >>> end >>> >>> class Locker < ActiveRecord::Base >>> # here you have the fields id, locker_number, student_id (this >>> is the one for the association) >>> belongs_to :student >>> end >>> >>> --- >>> >>> class Sale < ActiveRecord::Base >>> # id and whatever other fields >>> has_one :invoice >>> end >>> >>> class Invoice < ActiveRecord::Base >>> # id, sale_id, any other fields you want >>> belongs_to :sale >>> end >>> >>> Do they help at all? >>> >>> Matt Didcoe >>> [email protected] >>> >>> >>> On Sat, Jan 10, 2009 at 4:54 AM, sohdubom <[email protected]> >>> wrote: >>> >>> as an example i thought that the following case could be a good one >>> for has_one relationship, but i ended up very confused: >>> >>> - suppose i have a Comment model with attributes: author, content, >>> status (just 3 to simplify) >>> >>> - i wouldn't do that in a real scenario, but let's say i don't >>> want to >>> create enums for status and decide to normalize it by creating an >>> extra model: Status >>> >>> in this case: a comment has_one status (like new, ok, bad, ...), so >>> the Comment model will have as fk: status_id and status belongs_to >>> comment (in singular) or status belongs_to comments (plural) ? >>> >>> >>> >>> >>> >>> >> >> >> >> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby or Rails Oceania" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rails-oceania?hl=en -~----------~----~----~----~------~----~------~--~---
