Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails-有很多不同的列名吗?_Ruby On Rails_Ruby_Relationship - Fatal编程技术网

Ruby on rails Rails-有很多不同的列名吗?

Ruby on rails Rails-有很多不同的列名吗?,ruby-on-rails,ruby,relationship,Ruby On Rails,Ruby,Relationship,我有一个数据模型-团队,具有以下关系: 有很多:链接的团队约束,类名:'LinkedTeamConstraints',dependent::destroy 然后我有LinkedTeamConstraints模型,如下所示: 属于:赛季团队,主键::\u id 现在,当我在季节团队上调用destroy-从而销毁链接的团队约束-我得到错误列链接的团队约束。季节团队id不存在。我还有另外两列,分别标为seasure\u team\u id\u 1和seasure\u team\u id\u 2。如何建

我有一个数据模型-
团队
,具有以下关系:

有很多:链接的团队约束,类名:'LinkedTeamConstraints',dependent::destroy

然后我有
LinkedTeamConstraints
模型,如下所示:

属于:赛季团队,主键::\u id

现在,当我在
季节团队
上调用
destroy
-从而销毁
链接的团队约束
-我得到错误
列链接的团队约束。季节团队id不存在
。我还有另外两列,分别标为
seasure\u team\u id\u 1
seasure\u team\u id\u 2
。如何建立多个关系,以便
链接团队约束。查询季节团队id\u 1
而不是
…季节团队id

会不会是这样的:


有很多:链接的团队约束。。。{where(“_id==?”,linked_team_constraints.season_team_id_1 | | linked_team_constraints.season_team_id_2)}

您需要为您的关系指定
外键
,并为每个键指定单独的关系。比如:

has_many :linked_team_1_constraints, class_name: 'LinkedTeamConstraints', foreign_key: :season_team_id_1, dependent: :destroy   
has_many :linked_team_2_constraints, class_name: 'LinkedTeamConstraints', foreign_key: :season_team_id_2, dependent: :destroy

试试这个属于:season\u team,:foreign\u key=>“season\u team\u id”@AnassAnas,它不起作用,因为
season\u team\u id
不是
链接的\u team\u约束上的一列
确定,然后添加它或使用season\u team\u id\u 1,而不是它,这样技术上可以(我所有的单元/功能测试都通过),但是在一个关系上有多个外键吗?不幸的是,没有。作为“解决方案”,您可以定义方法
链接的\u团队\u约束
,只使用
where
子句<代码>链接团队约束。其中('season\u team\u id\u 1=?或season\u team\u id\u 2=?',\u id)