has_many :through and association callbacks: Working?

Hi,

does anybody know if the association callbacks like :after_add, :before_remove should work together with the :through option of a has_many association?

For me it actually seems not to work. And I don't know if it is a problem of mine or generally not a feature. The Rails API docs just state that the association callbacks work with has_many.

Any ideas?

Feurio

If you look at the code:

if options[:through]   collection_reader_method(reflection, HasManyThroughAssociation)   collection_accessor_methods(reflection, HasManyThroughAssociation, false) else   add_multiple_associated_save_callbacks(reflection.name)   add_association_callbacks(reflection.name, reflection.options)   collection_accessor_methods(reflection, HasManyAssociation) end

So it would appear not. Has many through is a bit odd since it's actually an association proxy rather than an association collection, so some things are a bit odd. Luckily in edge rails (soon to be 2.1) Pratik tidied all that up and so I would imagine the callbacks would work.

Fred