繁体   English   中英

Ruby on Rails - 模型关系

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM