Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Labeled fixtures for associations in Rails 3 broken

After upgrading to Rails 3, fixtures that refer to other labelled fixtures (for relationships) stop working. Instead of finding the actual fixture with that name, the fixture label is interpreted as a string.

Example:

# Dog.yml

sparky:
  name: Sparky
  owner: john

# Person.yml

john:
  name: John

Where Dog "belongs to" person.

The error message is:

SQLite3::SQLException: table dogs has no column named 'owner'

like image 674
elsurudo Avatar asked Jun 11 '10 22:06

elsurudo


1 Answers

Try

# Dog.yml

sparky:
  name: Sparky
  owner: john (Person)

# Person.yml

john:
  name: John

See the "polymorphic belongs_to" section of http://api.rubyonrails.org/classes/Fixtures.html

like image 101
Jamie Wong Avatar answered Nov 12 '22 06:11

Jamie Wong