【发布时间】:2015-07-08 21:27:39
【问题描述】:
我知道如何制作本文档中所述的多选表单。 http://www.rubydoc.info/github/justinfrench/formtastic/Formtastic/Inputs/SelectInput
f.input :name, :as => :select, :collection => ["Justin", "Kate"]
我不清楚我必须在 permit_params 中放入什么才能通过此表单请求。
我通过公司模式来做这件事。 所以我有
ActiveAdmin.register Company do
permit_params :name
controller do
def create
puts params
company = Company.new(permitted_params[:company])
if company.save
redirect_to admin_companies_path
else
redirect_to new_admin_company_path, alert: 'Please fill all the fields'
end
end
form do |f|
f.inputs do
f.input :name, :as => :select, :collection => ["a","b","c"]
end
end
end
当我提交选择了“b”和“c”的表单时,我在 params[:company] 中看到以下内容
"company"=>{"name"=>["", "b","c"]}, "commit"=>"Create Company", "controller"=>"admin/companies", "action"=>"create"}
Unpermitted parameter: name
(0.1ms) begin transaction
(0.1ms) rollback transaction
我不清楚在 activeadmin 或 formtastic 文档中,我需要在 permit_params 中更改什么才能让它通过。
顺便说一句,正如您所知,这是一个玩具示例。完成这项工作后,我想弄清楚如何为 has_many 关联执行此操作。如果通过该路径更容易找到解决方案,请告诉我。
【问题讨论】:
标签: ruby-on-rails activeadmin multi-select formtastic