2012-03-07 2 views
2

У меня вопрос об объединении активной записи в Rails. Я разрабатываю три модели активной записи: Team, Teamuser, пользователи, тестируя связь «has_many through». В основном, я просто хочу иметь возможность называть team.users и user.teams.Неинициализированная постоянная ошибка на has_many через ассоциацию

вот моя модель определений

team.rb 
    ####### 
    class Team < ActiveRecord::Base 

    has_many :teamusers, :foreign_key => :team_id 
    has_many :users, :through => :teamusers 

    end 

и

teamuser.rb 
    ########### 
    class Teamuser < ActiveRecord::Base 

    belongs_to :teams 
    belongs_to :users 

    end 

затем

user.rb 
    ######## 
    class User < ActiveRecord::Base 

    has_many :teamusers, :foreign_key => :user_id 
    has_many :teams, :through => :teamusers 

    end 

каждый раз, когда я пытаюсь это

team.users

он возвращает мне сообщение об ошибке «uninitialized constant Team :: Users».

что я могу ошибаться? любой совет будет очень оценен.

ответ

5

Ваш Teamuser должен быть:

class Teamuser < ActiveRecord::Base 

    belongs_to :team 
    belongs_to :user 
end 
Смежные вопросы