Ruby on Rails: несколько одинаковых полей ввода в одной форме - PullRequest
2 голосов
/ 19 декабря 2011

Есть страница, где есть несколько полей ввода одной и той же вещи, сообщения. Прямо сейчас, когда пользователь вводит вопрос, скажем, о 3 полях, единственное, которое сохраняет в базу данных, является последним. Принимая во внимание, что он должен сохранить все три и дать каждому свой post_id. Также; если пользователь не вводит ничего для других полей, он также не должен сохранять данные в базе данных.

<%= form_for(@post) do |f| %>
  <%= f.text_field :content %>
  <%= f.text_field :content %>
  <%= f.text_field :content %>
<% end %>

1 Ответ

5 голосов
/ 19 декабря 2011

Это сбой, потому что то, что вы получили выше, оценивается в поле html с тем же именем / идентификатором , и браузер публикует значение только для одного из них.Если это разные поля, вам нужно дать им уникальные имена / идентификаторы или , вам нужно создать их как массив, например:

  <%= f.text_field_tag 'content_array[]' %>

или, если вы хотите, чтобы они были набор сообщений - вам нужно добавить несколько подформ (по одной для каждого сообщения), используя пользовательскую форму.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...