【发布时间】:2011-10-20 09:47:54
【问题描述】:
我知道“belongs_to :through”是无效的。这只是我试图表达我想要实现的目标。等我一会儿……
这就是我所拥有的:
class League
has_many :divisions
end
class Division
belongs_to :league
has_many :teams
end
class Team
belongs_to :division
has_many :players
end
class Player
belongs_to :team
end
现在,为了制作“棒球卡”视图表单,我需要:
name
team.name
team.division.name
team.division.league.name
那么,有没有办法建立一个“belongs_to :through”关联来直接从“players_controller”访问“division.name”而不需要“team”。字首??我必须访问从 'player' 到 'division' 的很多列,所以我正在寻找一种方法来“直接”访问这些列。
一种选择是在“玩家”表中包含一个“division_id”列,但有人告诉我这会破坏关系数据模型,因为如果数据选择功能不正确,它会导致不一致已处理(例如,玩家 A 在 A 组中的 A 组,但玩家 A 的 Division_id 列设置为 B 组)。
是否可以建立“符号链接”,例如“division”现在指代“team.division”,“league”现在指代“team.division.league”??
或者,每次都使用完整路径的唯一真正选择是什么??
希望有人能提供帮助。
【问题讨论】:
标签: ruby-on-rails activerecord