2.0 Fixtures with has_many :through ??

206 views
Skip to first unread message

Philipp Stangl

unread,
Mar 12, 2008, 1:29:19 AM3/12/08
to Ruby on Rails: Talk
hi!

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!!

philipp

Nathan Esquenazi

unread,
Mar 12, 2008, 2:45:15 AM3/12/08
to rubyonra...@googlegroups.com
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.
--
Posted via http://www.ruby-forum.com/.

AndyV

unread,
Mar 12, 2008, 12:42:05 PM3/12/08
to Ruby on Rails: Talk
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 Esquenazi <rails-mailing-l...@andreas-
Reply all
Reply to author
Forward
0 new messages