我有一个多层嵌套表单
User->Tasks->Prerequisites
并以相同的形式
User->Tasks->Location
位置表单正常工作,现在我试图指定当前任务的先决条件.先决条件是一个task_id存储在:completed_task字段中.
WARNING: Can't mass-assign protected attributes: prerequisite_attributes
用户每个任务的一个警告.
我已经经历了与此相关的所有其他问题,确保字段名称:completed_task被正确引用,
添加attr_accessible到我的模型(它已经在那里,我扩展它).
我不知道还有什么我应该做的.
我的模型看起来像
class Task < ActiveRecord::Base attr_accessible :user_id,:date,:description,:location_id belongs_to :user has_one :location accepts_nested_attributes_for :location has_many :prerequisites accepts_nested_attributes_for :prerequisites end class Prerequisite < ActiveRecord::Base attr_accessible :completed_task belongs_to :task end
表单使用formtastic,我包括表单通过
<%= f.semantic_fields_for :prerequisites do |builder3| %> <%= render 'prerequisite_fields',:f=>builder3 %> <% end %> --- _prerequisite_fields.html.erb ----- < div class="nested-fields" > <%= f. inputs:completed_step %> </div>
有什么建议么?
解决方法
添加:prerequisite_attributes to attr_accessible以进行质量分配
attr_accessible:user_id,:date,:description,:location_id,:prerequisite_attributes
应该让你开始