我有两个型号Project
和“任务”,其中项目有很多任务并且任务属于项目
现在在我的Task
模型我正在使用项目中的属性对字段进行验证
validates :effort, :inclusion => 1..(project.effort)
这会导致错误method_missing: undefined method project
问题是,如何在 Rails 3 中根据父属性的值 (Project.effort) 验证子属性 (Task.effort)?
我最终在回调中进行验证,如果无效则抛出异常。唯一的缺点是控制器必须捕获异常。
UPDATE
基于rails 3.0自定义验证器的更好解决方案:https://web.archive.org/web/20110928154550/http://zadasnotes.blogspot.com/2010/12/rails-3-validation-using-parent-models.html https://web.archive.org/web/20110928154550/http://zadasnotes.blogspot.com/2010/12/rails-3-validation-using-parent-models.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)