Ruby on rails 无法为Rails 5中的关联模型创建记录

Ruby on rails 无法为Rails 5中的关联模型创建记录,ruby-on-rails,ruby,ruby-on-rails-5,Ruby On Rails,Ruby,Ruby On Rails 5,我正在尝试以Contact.first.to_do_items.create的形式为rails控制台中的关联模型创建一条记录!()我有ActiveRecord::Record无效验证失败:联系人必须存在 型号: class Contact < ApplicationRecord acts_as_token_authenticatable # Include default devise modules. Others available are: # :confirmable,

我正在尝试以
Contact.first.to_do_items.create的形式为rails控制台中的关联模型创建一条记录!()
我有
ActiveRecord::Record无效验证失败:联系人必须存在

型号:

class Contact < ApplicationRecord
  acts_as_token_authenticatable
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable, :trackable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :validatable

  has_many :to_do_items
end

class ToDoItem < ApplicationRecord
  belongs_to :сontact
end
class联系人

当我在
ToDoItem
类中使用
optional:true
时,它工作得很好,但我很好奇为什么它不使用上面列出的代码创建记录。

默认情况下,如果未设置关联,则任何
所属的
都将抛出错误。这就是为什么它与
可选:true
一起工作。您只需先创建
联系人
,然后再创建他们的
待办事项
s@Jon是的,但是有
联系人。首先,我肯定有
联系人,没有?不一定。
联系人。首先
确实返回了一个联系人吗?@Jon当然,我的数据库中有不止一个联系人:)然后分多个步骤尝试<代码>联系人=联系人。首先
然后
todo=联系人。待办事项。生成
然后todo.保存并检查是否保存,如果未保存,请检查
todo.错误