ActiveAdmin 的多嵌套属性

Multi nested attributes with ActiveAdmin

嘿,所以我有三个模型:

  1. 数据集
  2. 浏览选项
  3. 浏览选项数据

类似于 Ryan 的 railscasts (http://railscasts.com/episodes/196-nested-model-form-revised?view=comments) 除了在 ActiveAdmin 中,我想要一个双重嵌套表单。

这是我的活动管理员表单:

form do |f|
  f.inputs "Data Set Info" do
    f.input :name
    f.input :display_name
    f.input :description
    f.input :cover_photo, :label => "Cover Image (Recommend a pattern: 980x300)"
  end
  f.inputs "Browse Options" do
    f.has_many :browse_options, new_record: 'Add Option' do |t|
      t.input :option_name
      t.has_many :browse_option_data, new_record: 'Add record' do |b|
        b.input :tradesman_id, :as => :select, :collection => Tradesman.all.collect {|set| [set.name, set.id] }
        b.input :data
        b.input :featured
      end
    end
  end
  f.actions
end

我得到一个

uninitialized constant BrowseOption::BrowseOptionDatum

错误

所以第一个 'has_many' 工作正常(我已经测试过)但是 browse_option_data 的第二个 'has_many' 给出了这个错误。以下是每个型号:

数据集模型:

class DataSet < ActiveRecord::Base
  has_many :browse_options
  accepts_nested_attributes_for :browse_options, allow_destroy: true 
end

浏览选项型号:

class BrowseOption < ActiveRecord::Base
  belongs_to :data_set

  has_many :browse_option_data
  accepts_nested_attributes_for :browse_option_data, allow_destroy: true 
end

浏览选项数据模型:

class BrowseOptionData < ActiveRecord::Base
  belongs_to :browse_options
end

有什么想法吗?我找不到任何拼写错误。如果您还需要什么,请告诉我。谢谢!

原来我定义的“:browse_option_data”是错误的,我应该调用“:browse_option_datas”并且在 has_many 的模型中也是这样定义的.