Модель Rails3 связана с has_many: сквозная ошибка с NameError - PullRequest
0 голосов
/ 23 января 2012

Я хочу связать две модели (Team и Member) с помощью has_many: through, но возвращает NameError.Что мне не хватает?

Модели

class Team < ActiveRecord::Base
  has_many :team_members
  has_many :members, :through => :team_members
end

class Member < ActiveRecord::Base
  has_many :team_members
  has_many :teams, :through => :team_members
end

class TeamMember < ActiveRecord::Base
  belongs_to :teams
  belongs_to :members
end

Таблицы базы данных

teams
members
teams_members

Ошибки

Когда я пытаюсь создать новую запись с ассоциацией, яполучил следующие ошибки.

@team = Team.new
@team.members
NameError: uninitialized constant Team::Members

Также при поиске существующей записи эти ошибки выбрасываются.

@team = Team.find(1)
@team.members # expecting to get existing records in members table
NameError: uninitialized constant Team::Members

1 Ответ

0 голосов
/ 23 января 2012

Правильное имя для таблицы TeamMember: team_members, а не team_members

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...