Я разрабатываю небольшое приложение в Rails 3. На одной странице я собираю идентификаторы для каждого пользователя (в каждом цикле) в массиве. Затем я помещаю содержимое этого массива в скрытое текстовое поле и отправляю его методу «add_all». В этом методе я получил цикл, который должен выбрать каждый идентификатор пользователя и добавить его в базу данных по одному, но только добавляет первый.Rails 3. Не удается создать цикл через
В представлении (немного simplyfied):
<% profileids = Array.new %>
<% @notfriends.each do |contact| %>
<% profileids << contact.id %>
<% end %>
<%= hidden_field_tag :profileids, profileids.join(",") %>
В контроллере:
params[:profileids].each do |id|
@profile = Profile.find(params[:profile_id])
@contact = Contact.create(:profile_id => params[:profile_id], :friend_id => id)
@profile.contacts << @contact
end
Могу ли я на самом деле делать это правильно? Почему каждый контроллер не перебирает массив?
Работает как очарование! Спасибо! – 2010-11-28 09:58:33