一直想弄清楚为什么我的表单无法正常工作。 - 这是 我最接近它的工作,它显示位置字段 当我这样做但是当我提交表格时,它说“未知属性 地点“,我认为是因为地点应该是 像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
答案 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