Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.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 设置a在rails中有一个关系_Ruby On Rails_Ruby_Has One - Fatal编程技术网

Ruby on rails 设置a在rails中有一个关系

Ruby on rails 设置a在rails中有一个关系,ruby-on-rails,ruby,has-one,Ruby On Rails,Ruby,Has One,我不明白为什么这个不起作用: home_team = Team.find_by_name! home_team["name"] away_team = Team.find_by_name! away_team["name"] fixture.home_team = home_team fixture.away_team = away_team 但这确实是: home_team = Team.find_by_name! home_team["name"] away_team = Team.fi

我不明白为什么这个不起作用:

home_team = Team.find_by_name! home_team["name"]
away_team = Team.find_by_name! away_team["name"]

fixture.home_team = home_team
fixture.away_team = away_team
但这确实是:

home_team = Team.find_by_name! home_team["name"]
away_team = Team.find_by_name! away_team["name"]

fixture.home_team_id = home_team.id
fixture.away_team_id = away_team.id
夹具型号:

class Fixture < ActiveRecord::Base
  has_one :home_team, foreign_key: 'home_team_id', class_name: 'Team'
  has_one :away_team, foreign_key: 'away_team_id', class_name: 'Team'
  ...
end
class Fixture
我没有收到任何错误,行保存,但是
home\u team\u id
away\u team\u id
都是
null


有人能解释一下吗?

如果你的
Fixture
home\u team\u id
way\u team\u id
你会想在那里使用
belishing\u
。好的,所以我把关系改成了belishing\u to,效果如预期。但是我仍然不明白为什么一个方法起作用而另一个不起作用?在你的第二个例子中,它起作用是因为你直接设置了属性,而在你的第一个例子中,它失败了,因为关联没有正确设置。是的,我觉得很愚蠢。谢谢你的回复!