rails ActiveAdmin嵌套表单formtastic问题

时间:2011-11-07 19:52:46

标签: ruby-on-rails ruby formtastic activeadmin

一直想弄清楚为什么我的表单无法正常工作。 - 这是 我最接近它的工作,它显示位置字段 当我这样做但是当我提交表格时,它说“未知属性 地点“,我认为是因为地点应该是 像f.inputs一样访问:name => “位置”,:for => :位置做| location_form |,而不是我下面的内容(对吧?),但是当我这样做的时候 非复数什么都没有显示出来。如果我这样做复数,那就不行了 知道如何处理位置属性。任何人都可以告诉我,如果我 我做错了什么,或者这是一个错误?非常感谢 提前。

class Store < ActiveRecord::Base

  has_one :location
  belongs_to :admin_user
  accepts_nested_attributes_for :location

end

class Location < ActiveRecord::Base

  belongs_to :store

end

ActiveAdmin.register Store do

  form do |f|
    f.inputs "Details" do
      f.input :name
      f.input :description
      f.input :admin_user
    end

    f.inputs :name => "Location", :for => :locations do |location_form|
      location_form.input :address
    end

    f.buttons
  end
end 

3 个答案:

答案 0 :(得分:4)

也许尝试而不是

f.inputs :name => "Location", :for => :locations do |location_form|
  location_form.input :address
end

f.inputs :name => "Location", :for => [f.object.location || Location.new] do |location_form|
  location_form.input :address
end

答案 1 :(得分:3)

您应该尝试使用活动管理员提供的表单构建器对象的has_many方法。

f.has_many :locations do |location_form|
  location_form.input :name
end

答案 2 :(得分:0)

您可以尝试创建位置对象

f.semantic_fields_for :locations, Location.new do |ff|
  ff.input :name
end