[英]Ruby on Rails - Model Relations
我正在为Ruby on Rails开发一个小应用程序,我有一个关于模型之间关系的问题。
我有“团队”在“比赛”中相互对战
这些表目前看起来像这样,虽然我可能需要对匹配表进行一些更改。
团队:
id | Name
1 | some-name#1
2 | some-name#2
3 | some-name#3
火柴
id | team_id1 | team_id2 | result1 | result2
1 | 2 | 3 | -1 | -1
在此示例中,ID为2的团队与ID为3的团队进行比赛。结果尚未输入,因此两者都设置为“-1”。 如果第2组以3:7的分数对第3组进行松散,那么result1将为“3”而结果为2“7”
一支球队有很多比赛,一场比赛属于两支球队。
我如何在Rails中建模关系?
team.rb
has_many :matches
matches.rb
belongs_to :team_one, :foreign_key => "team_id1", :class_name => "Team"
belongs_to :team_two, :foreign_key => "team_id2", :class_name => "Team"
在这种情况下,假设你想从匹配对象中找到团队一的名字和团队二的名字
match = match.find(1)
match.team_one.name ### gives -> some-name#2
match.team_two.name ### gives -> some-name#3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.