Hey guys,

What do you think about tracking habtm changes?

Apparently we can't do that because when you change a habtm association it 
is changed immediately on database instead of waiting the save call (not 
sure why and the problem may not be because of that).

Current behaviour:

profile.roles_ids
=> []

profile.update_attributes(:name => nil, :roles_ids => [...])
=> false

profile.changes
{ "name" => ['Admin', nil] }



Expected behaviour:

profile.roles_ids
=> []

profile.update_attributes(:name => nil, :roles_ids => [...])
=> false

profile.changes
{ "name" => ['Admin', nil], :roles_ids => [[], [...]] }




Giving some problem context, I have an application that need to audit 
almost every change and I can track everything using the changes method but 
habtm changes.

We can write a solution like storing the initial state of roles_ids in an 
after_initialize callback on the model and comparing it on a after_save but 
I was thinking in a more "native" solution.


What do you think?

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/rubyonrails-core.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to