On Wed, Mar 12, 2014 at 4:21 PM, Mohamed Wael Khobalatte <
wael.khobala...@gmail.com> wrote:
True. I somehow overlooked the fact that update_attribute saves dirty
> attributes. Xavier, you said the purpose of update_attribute "was" to save
> quick stuff, are there plans to deprecate this behavior?
Yeah, but it's kinda misleading that update_attribute saved other
attributes and not just the one specified in the argument, being that the
method is "update_attribute" as a singular attribute. The reload works
fine, as the username was saved with update_attribute, which saved more
than what it was
True. I somehow overlooked the fact that update_attribute saves dirty
attributes. Xavier, you said the purpose of update_attribute "was" to save
quick stuff, are there plans to deprecate this behavior?
On Wed, Mar 12, 2014 at 4:10 PM, Xavier Noria wrote:
> The point is that dirty attributes get
The point is that dirty attributes get persisted, not just the one you set.
That is, the (invalid) username was saved because validations are skipped
and the model as such is saved.
Persisting dirty attributes is not an overlook, callbacks are run so you
need to take the model as a whole and store
The issue here does not seem to be what everyone is addressing. If I
understood Anh correctly, when you run update_attribute X on a unsaved
model that has one attribute Y set in memory, calling reload will report
both X and Y as saved, so it seems to be a reload issue at first glance. I
will try an
On 12-03-2014 08:23, Anh Nguyen wrote:
POLA http://en.wikipedia.org/wiki/Principle_of_least_astonishment
Examples
```
# user.rb
class User < ActiveRecord::Base
attr_accessible :name, :username
validates :username, uniqueness: true
end
user1 = User.create(name: 'Name 1', username: 'username
On Mar 12, 2014, at 7:23 AM, Anh Nguyen wrote:
> POLA http://en.wikipedia.org/wiki/Principle_of_least_astonishment
>
> Examples
>
> ```
> # user.rb
> class User < ActiveRecord::Base
> attr_accessible :name, :username
> validates :username, uniqueness: true
> end
>
> user1 = User.create(na
POLA http://en.wikipedia.org/wiki/Principle_of_least_astonishment
Examples
```
# user.rb
class User < ActiveRecord::Base
attr_accessible :name, :username
validates :username, uniqueness: true
end
user1 = User.create(name: 'Name 1', username: 'username1')
user2 = User.create(name: 'Name 2', u