不确定我是否正确行事。有两种模式:
class Team < ActiveRecord::Base
attr_accessible :city, :name, :division_id
belongs_to :divison
has_many :players
end
class Division < ActiveRecord::Base
attr_accessible :name
has_many :teams
end
并且:团队的迁移包括foreign_key
create_table :teams do |t|
t.string :name
t.string :city
t.integer :division_id
t.foreign_key :division, dependent: :delete
t.timestamps
end
在我的Teams
索引视图中,我想为每个团队添加division
名称。获取id很简单,我只使用<%= team.division_id %>
但是,我不知道如何获取分区名称。
我尝试将该部门添加到每个团队:
@teams.each do |team|
team.division = Division.find(team.division_id)
end
但这失败了,说:undefined method 'division=' for #<Team:0x3cf2df0>
。我甚至不确定这是否是正确的方法,或者我是否过于复杂。
答案 0 :(得分:2)
既然你有这种关系,你应该能够做到
team.division.name
另外,你的模型中有一个拼写错误(你会在像Java这样的静态类型语言中错过这种错误。在Ruby中你必须编写测试,大量的测试)< / p>
belongs_to :divison