вернет очень большую коллекцию)

тим, у меня есть 15 идентификаторов пользователей в массивеuser_ids.

Если я хочу, скажем, изменить все их имена на «Боб», я мог бы сделать:

users = User.find(user_ids)
users.update_all( :name => 'Bob' )

Это не вызывает обратные вызовы, хотя. Если мне нужно вызвать обратные вызовы при сохранении этих записей, насколько мне известно, единственный способ - это использовать:

users = User.find(user_ids)
users.each do |u|
  u.name = 'Bob'
  u.save
end

Однако это потенциально означает очень продолжительную задачу в действии контроллера.

Итак, мой вопрос, есть ли другой способ лучше / выше производительность / railsier для запуска пакетного обновления для набора записей, которыеделает вызвать обратные вызовы на записи?

Ответы на вопрос(3)

Ваш ответ на вопрос