我有一个没有与之关联的模型的表单,所以我使用form_tag而不是form_for.正如所料,当用户提交表单时,每个字段都包含在params散列中.但是表单会发生很大变化,我宁愿在params哈希中有一个哈希值,它将保存所有表单字段值,这样我每次更改表单时都不必更改控制器.
有没有办法将表单字段值放入像form_for那样的嵌套哈希?我希望能够通过做类似的事情来获取所有表单字段并将它们转换为jsonparams[:form_fields].to_json
Mik*_*ell 58
您可以fields_for在内部使用form_tag更正式的表达命名空间的方式.
fields_for :form_fields do |ff|
ff.text_field :my_text_field
ff.select :my_select_tag
end
Run Code Online (Sandbox Code Playgroud)
或者只是命名所有表单输入,如下:
text_field_tag "form_fields[my_text_field]"
select_tag "form_fields[my_select_tag]" ...
Run Code Online (Sandbox Code Playgroud)
那么你会得到params[:form_fields] = {:my_text_field => "foo", :my_select_tag => "bar"},我认为这是你想要的.
| 归档时间: |
|
| 查看次数: |
14392 次 |
| 最近记录: |