我有一个包含许多任务的项目资源。我想通过将validates_presence_of :project_id
添加到任务模型来确保每个任务都有project_id
。Rails:在has_many关联中验证parent_id的存在
但是,当创建一个包含任务的新项目时,project_id在记录保存之前将不可用,因此我不能使用validates_presence_of :project_id
。
所以我的问题是,我如何验证任务模型中的project_id的存在?我想确保每项任务都有一位家长。
...
class Project < ActiveRecord::Base
has_many :tasks, :dependent => :destroy
accepts_nested_attributes_for :tasks, :allow_destroy => true
...
class Task < ActiveRecord::Base
belongs_to :project
validates_presence_of :project_id
这个问题对我来说没有多大意义。你想要一个任务属于一个项目,而不需要从一个项目开始...如何获得一个不存在的东西的id? – porkeypop 2010-06-08 05:19:11
您是否在创建项目时通过嵌套表单创建任务? – 2010-06-08 21:45:29