web-dev-qa-db-fra.com

Est-ce que form_tag fonctionne avec simple_form?

J'ai une forme qui utilise form_tag Et je ne sais pas comment l'utiliser avec le Simple_Form Gem . Voici comment ma forme a l'air:

<%= form_tag create_multiple_prices_path, :method => :post do %>

  <% @prices.each_with_index do |price, index| %>
    <%= fields_for "prices[#{index}]", price do |up| %>
      <%= render "fields", :f => up %>
    <% end %>
  <% end %>

  <%= submit_tag "Done" %>
<% end %>

Peut-il être fait? Comment un form_tag Changer pour utiliser Simple_Form correctement? Qu'en est-il de l'utiliser avec fields_for? Un débutant pourrait utiliser une certaine aide.

Merci.

40
LearningRoR

simple_Form est une enveloppe autour de form_for, ne pas form_tag. Vous pouvez utiliser simple_form_for à la place de form_for, mais form_tag crée juste <form> Tags avec contenu spécifié, il n'est pas pertinent d'une forme simple.

17
Ineu

Vous pouvez éviter l'utilisation de

params[:signin][:email]

à l'aide de

<%= f.input :email, input_html: { name: "email" } %>

donc

params[:email]
7
Mauro

comme @barelyknown annondi dit, vous pouvez utiliser Simple_Form, même sans modèle, vous pouvez également utiliser field_for ou simple_field_for

<%= simple_form_for :transaction_limits, {url: create_multiple_prices_path, method: :post} do |f| %>
  <% @prices.each_with_index do |price, index| %>
    <%= f.fields_for "prices[#{index}]", price do |up| %>
      <%= render "fields", :f => up %>
    <% end %>
  <% end %>

  <%= f.submit "button" %>
<% end %>
1
qoyyim