2.0 Fixtures with has_many :through?


did anyone get the new fixtures features (no join table, no ids) for a
has_many :through assocation running?

I did everything like I saw in a couple of screencasts and tutorials,
but they were all using a habtm association - what do I have to change
to get it to work with a has_many :through?

google didn’t brought any results and a question in the rails forum by
someone else with the same problem was not answered by anyone - is it
possible that the new fixtures simply cannot be used with a
has_many :through currently? and if so, does anyone know if it is
planned to have it in the rails core in the next future?

thanks for any feedback!!


This is not currently supported as far as I know but there is a very
good reason why. First off, the general use case for has_many :through
is when you need to join two models AND include additional details about
the association. For instance if we have users and magazines then the
through association would be “subscription” BUT it also has other
attributes such as when the subscription was made and how many times
recurring payment has been received.

How would you specify the additional columns of information for the
relationship using the new fixtures method? The new way is just a list
of fixture names and would not be able to accommodate has many through
relationships that contained additional data.

I could imagine a syntax that could work but it would different. Not to
mention that in a has_many :through, the join table itself is a model
and so having fixtures for it somehow makes sense since it is actually
an activerecord model itself.

This absolutely makes sense - I don’t know why I didn’t thought of

I’m going to post this thread in the rails forum!

Thanks a lot!


On Mar 12, 6:45 am, Nathan E. <rails-mailing-l…@andreas-

I think the answer is not “It cannot be done for good reasons” but “It
can be done but it takes two steps.” Since you’ve taken the time to
declare the join table explicitly as a model that only makes sense.

On Mar 12, 2:45 am, Nathan E. <rails-mailing-l…@andreas-