M:n realtions don't work with fixtures?!


#1

Hello,

I’m currently trying to populate my database with fixtures and having a
problem.

The table USER has many GROUPS he belongs to and vice versa so it’s m:n
relationship.

Model:
class User < ActiveRecord::Base
has_many :user_groups, :dependent => :nullify
has_many :groups, :through => :user_groups
end

class Group < ActiveRecord::Base
has_many :user_groups, :dependent => :nullify
has_many :users, :through => :user_groups
end

class UserGroups < ActiveRecord::Base
belongs_to :user
belongs_to :group
end

Fixuture of UserGroups:
one:
user: one
group: one
two:
user: two
group: two

And that’s the error I get:
rake aborted!
Mysql::Error: #42S22Unknown column ‘user’ in ‘field list’: INSERT INTO
user_groups (user, group) VALUES (‘two’, ‘two’)

Anyone any idea how to solve it? Thanks!


#2

On 5 Nov 2008, at 15:03, Heinz S. wrote:

user: two
group: two

And that’s the error I get:
rake aborted!
Mysql::Error: #42S22Unknown column ‘user’ in ‘field list’: INSERT INTO
user_groups (user, group) VALUES (‘two’, ‘two’)

IIRC with the foxy fixtures stuff you don’t need user_groups.yml at all

your users.yml can contain stuff like

bob:
groups: one, two

Fred


#3

Thanks!


#4

Well, doesn’t seem to work:

rake aborted!
Mysql::Error: #42S22Unknown column ‘groups’ in ‘field list’: INSERT INTO
users (name, groups) VALUES (‘test’, ‘one’)

Fixture of Users:
one:
name: test
groups: one


#5

rails -v
Rails 2.1.0


#6

Spelling error in the model.rb. All good, thanks a lot!


#7

On 5 Nov 2008, at 16:17, Heinz S. wrote:

Well, doesn’t seem to work:

just as a sanity check, what version of rails are you using ?

Fred