On Nov 19, 3:21 pm, MarkMT <[EMAIL PROTECTED]> wrote: > On Nov 19, 9:41 am, "Dirkjan Bussink" <[EMAIL PROTECTED]> wrote: > > > > > > crappy = Tagging.new > > > post.taggings << crappy > > > post.save > > > This saving will always be required, because adding a new object to an > > association should never have the side effect of actually saving the > > Tagging object here too. That would be really unexpected imho. > > > For us, ActiveRecord is not the default standard on how things behave. > > We like to create something that fits the Ruby idiom of behaving like > > a developer expects. Saving objects as a side-effect of just adding it > > to an association does not really fit that principle of least > > surprise. > > > These things notwithstanding, the has :through code is not up to par, > > so there probably will be issues. We're not yet sure on how to solve > > all of these problems, so that will take some discussion too. > > > -- > > Regards, > > > Dirkjan Bussink > > I guess least surprise is in the eye of the beholder. My $0.02 is that > if I declare that model Post: > > has n, :tags, :through :taggings > > I have plainly stated an intention that the only way an object of > class Tag can be associated with one of class Post is by creating an > instance of a join model Tagging. So if I then say > > post.tags << some_tag > > (if in fact you are going to allow that) imo there is no way to > interpret this as meaning something other than an intention to create > a join model instance. Making me explicitly create the join instance > and associate it separately in each direction seems like unnecessary > repetition to me. Also, I assume (though haven't tested) that if I use > the form :through => Resource, the (in this case) anonymous join model > does actually get created and saved automatically when I do an > association across the :through relationship. Is this true? > > Without providing this behavior, I don't really see why datamapper > would bother offering the :through option. Am I missing something? > > Mark.
BTW, I meant to mention - although I realize there's no fundamental reason to view ActiveRecord as the default standard, there has been some indication in the publicity for Datamapper that it's drop-in compatible. See slide 9 from Yehuda's talk at RailsConf: http://schulty.com/articles/datamapper_presented_at_railsconf08.html. This seems a little misleading. Mark. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "DataMapper" 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/datamapper?hl=en -~----------~----~----~----~------~----~------~--~---
