Я хочу динамически создавать флажки в форме с использованием массива с пользователями. Значение, которое должно быть сохранено в массиве (param [: project] [: members]), должно содержать user_id из всех щелкнутых флажков с пользователями.Динамическое создание флажков
Я много искал, но еще не нашел то, что искал.
Какой код следует писать для флажков?
Форма в виду:
<%= form_for @project do |f| %>
<div class="text_field">
<%= f.label :title%>
<%= f.text_field :title%>
</div>
<div class="text_field">
<%= f.label :description%>
<%= f.text_field :description%>
</div>
<div class="dropdown">
<%= f.label :start_date%>
<%= f.date_select :start_date %>
</div>
<div class="dropdown">
<%= f.label :end_date%>
<%= f.date_select :end_date %>
</div>
<div class="checkboxes">
<% @users.each do |user| %>
// <%= check_box_tag "users[]", user.id %> <--- ???
<% end %>
</div>
<div class="submit">
<%= f.submit "Spara" %>
</div>
<% end %>
Контроллер:
def new
@project = Project.new
@users = (current_user.blank? ? User.all : User.find(:all, :conditions => ["id != ?", current_user.id]))
end
визуализации HTML:
[ ] Jules Smith // user_id: 1
[X] Carl Jones // user_id: 2
[X] Lily Stevens // user_id: 3
// param[:project][:members] // <-- 2, 3 (user_id's)
Большое спасибо за ответ. Однако при проверке кода я получаю следующую ошибку: undefined method 'member_ids 'для ... Знаете почему? Не могли бы вы объяснить «user.id, @ project.member_ids.include? (User.id)» для меня? – holyredbeard
У вас установлена ассоциация has_and_belongs_to_many и проверено, что это правильно и работает? Я обновил свой ответ. –