使用foreing_key时无法找到没有ID的记录

时间:2015-08-25 12:29:21

标签: ruby-on-rails ruby-on-rails-4

我正在尝试与外键实现has_many belongs_to关系。

模板

belongs_to :project

项目

has_many :templates
belongs_to :coordinator, foreign_key: :coordinator_id, class_name: 'Person'

has_many :projects

我能够做到

template = Template.new
template.project = Project.new
template.project # my empty project is showed

但这不起作用

project = Project.new
project.coordinator = Person.new # Everything is ok until here
project.coordinator # ActiveRecord::RecordNotFound: Couldn't find Person without an ID

我不知道我在哪里做错了,也许我需要在某个地方指定主键,但我无法弄明白。

我正在使用Rails 4

1 个答案:

答案 0 :(得分:0)

亲自,

has_many :projects, foreign_key: :coordinator_id 

目前预计会在项目表中找到person_id。

哦,我会反过来说:关于协会。