I'm using bootstrap_form
gem for form generating in Rails. In my form view, I am using form_tag
instead of form_for
<%= bootstrap_form_tag url: 'metafields' do |f| %>
<%= f.hidden_field :owner_id, value: params[:owner_id] %>
<%= f.text_field :namespace, placeholder: 'Namespace of metafield' %>
<%= f.text_field :key, placeholder: 'Key of metafield' %>
<%= f.text_area :description, placeholder: 'Description about metafield' %>
<%= f.select :type, [['String', 'string']], class: 'selectpicker' %>
<% end %>
Is there a way to submit this form with params including prefix namespace like params[:metafield][:owner_id]
.
When I tried with
<%= bootstrap_form_tag url: 'metafields', namespace: 'metafield' do |f| %>
It generates below input, which is not what I want
<input placeholder="Key of metafield" name="key" id="metafield_key" class="form-control" type="text" kl_vkbd_parsed="true">
quyetdc's answer is a way to go unless you have dynamic forms, here is a cleaner way
<%= bootstrap_form_tag url: 'metafields' do |f| %>
<%= f.fields_for :metafield do |mf| %>
<%= mf.hidden_field :owner_id, value: params[:owner_id] %>
<%= mf.text_field :namespace, placeholder: 'Namespace of metafield' %>
<%= mf.text_field :key, placeholder: 'Key of metafield' %>
<%= mf.text_area :description, placeholder: 'Description about metafield' %>
<%= mf.select :type, [['String', 'string']], class: 'selectpicker' %>
<% end %>