我有一個包含許多任務的項目資源。我想通過將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