cool! that works for me. I look forward to seeing this in a DM release sometime soon ;) thanks, Jon
On Dec 9, 8:55 am, Jacques Crocker <[EMAIL PROTECTED]> wrote: > Hmm.. thats a tricky one. If we added *update_only params to > attributes=, the only way to call would be: > @user.send(:attributes=, params > [:user], :password, :password_confirmation) > > Really seems like there should be a helper method that focuses on > applying an attribute hash to the model. > > http://gist.github.com/33704 > > I've refactored resource.rb to allow a method called set_attributes > (hash, *update_only). update_attributes now reuses it, and it also > fixes a vulnerability on update_attributes where non public methods > get called (fixed in the gist by reusing attributes= to do the work > for us). > > Let me know if anything looks way off base. I'll add some specs and > submit it back to DataMapper if it seems like a positive API change. > > On Dec 8, 3:37 am, Jon Hancock <[EMAIL PROTECTED]> wrote: > > > nice, but only useful in situation when I want to do a save along with > > the assign. > > > I see that def attributes=(values_hash) does not allow me to limit > > the assign. > > > but def update_attributes(hash, *update_only), the method defined > > right below it in resource.rb does. Seem like attributes= is in need > > of a slight upgrade? > > > thanks, Jon > > > On Dec 8, 6:14 am, "Dan Kubb (dkubb)" <[EMAIL PROTECTED]> wrote: > > > > Here's another option: > > > > def update(id, user) > > > @user = User.get(id) > > > if @user.update_attributes > > > (user, :display_name, :password, :password_confirmation) > > > ... > > > > Dan > > > (dkubb) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "merb" 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/merb?hl=en -~----------~----~----~----~------~----~------~--~---
