Разрешить пользователю выбирать несколько списков в форме - PullRequest
0 голосов
/ 15 октября 2018

У меня есть приложение, в котором я хотел бы разрешить пользователям добавлять фильм в один или несколько списков при добавлении его в БД.Прямо сейчас я использую переключатель, и он позволяет пользователю выбирать только один список за раз.Может кто-нибудь объяснить, как это будет работать, используя collection_select или что-то подобное?

Моя форма:

<div class="modal fade" id="movielistmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="movielistmodal">Add Movie To List</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <%= form_for @movie, method: :post, url: 'add_api_movie_to_list' do |f| %>
          <%= hidden_field_tag :movie_id, nil, { id: "movie-id" } %>
          <% @list.each do |list| %>
            <%= f.label :name, list.name %>
             <%= f.radio_button :list_ids, list.id %>
          <% end %>
          <%= f.label :rating %>
          <%= f.number_field :rating, min: 0, max: 5 %>
          <%= f.submit "Add Movie", class: 'btn btn-primary btn-space btn-sm' %>
        <% end %>
      </div>
    </div>
  </div>
</div>

1 Ответ

0 голосов
/ 15 октября 2018

Вы можете добавить collection_check_boxes

<%= form_for @movie, method: :post, url: 'add_api_movie_to_list' do |f| %>

    <%= f.collection_check_boxes :list_ids, List.id(:name), :id, :name %>

    <%= f.submit "Add Movie", class: 'btn btn-primary btn-space btn-sm' %>
            <% end %>

Это в представлении

<% List.all.each do |list| %>
          <%= link_to list.name,cars_path(params.merge(list_id: list.id)), class: "#{'shadow' if params[:list_id].to_i == list.id}" %><br>
        <% end %><hr>

Дайте мне знать, если это работает для вас

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