Adam Lamar on 24 Jan 2008 10:53:31 -0800


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PhillyOnRails] ActiveRecord: updating a single attribute


Perhaps you could try
model.update_attribute_with_validation_skipping(name, value) ?

http://api.rubyonrails.org/classes/ActiveRecord/Validations.html#M001313

Adam

On 1/24/08, Grant Ammons <grant@fakeboard.com> wrote:
> Are we talking about validations on the DB or app side?
>
> If we follow DHH's opinions, validations should occur on the app side, hence
> rails validations.
>
> model.valid? seems like a good way of enforcing validations on the app side,
> thus removing the need to pass to db to validate a model.
>
> -Grant
>
>
> On Jan 24, 2008 11:48 AM, Evan Weaver < evan@cloudbur.st> wrote:
> > You can't enforce validations if you don't resave every attribute every
> time.
> >
> > Evan
> >
> >
> > On Jan 24, 2008 12:33 PM, Chris Cera <chris@cera.us> wrote:
> >
> >
> >
> > > Hi everyone,
> > >
> > > Is there a way to update just one attribute of a record without
> > > causing all the attributes to be re-set?  When I use the
> > > update_attribute() or increment(), since they call save() it
> > > causes every attribute to get re-set.  I verified this in the
> > > mysql 'General Query Log'.  Example:
> > >     item.update_attribute(:normal_views, item.normal_views + 1)
> > >
> > > I feel that there must be a more elegant solution than this:
> > >     sql = 'UPDATE documents SET normal_views = normal_views + 1 WHERE id
> = ' + item.id.to_s
> > >     ActiveRecord::Base.connection.update(sql)
> > >
> > > Any suggestions are greatly appreciated.  Thank you, -Chris
> > >
> > > ref:
> http://api.rubyonrails.org/classes/ActiveRecord/Base.html
> > >
> > > --
> > > Christopher D. Cera
> > > CTO, Hovitate LLC
> > > http://vuzit.com
> > > P: 215.435.2289
> > > F: 267.295.7369
> > > _______________________________________________
> > > To unsubscribe or change your settings, visit:
> > > http://lists.phillyonrails.org/mailman/listinfo/talk
> > >
> >
> >
> >
> > --
> > Evan Weaver
> > Cloudburst, LLC
> >
> >
> >
> > _______________________________________________
> > To unsubscribe or change your settings, visit:
> > http://lists.phillyonrails.org/mailman/listinfo/talk
> >
>
>
> _______________________________________________
> To unsubscribe or change your settings, visit:
> http://lists.phillyonrails.org/mailman/listinfo/talk
>
>
_______________________________________________
To unsubscribe or change your settings, visit:
http://lists.phillyonrails.org/mailman/listinfo/talk