u = User.find_by_id('150') u.password = 'some_password' u.save!
Это отлично работает для одного ID/пользователя, но у меня около 1500 пользователей (у меня есть список/массив их ID), и я не знаю, как обработать их всех.
Чего я хочу добиться… нужно массово обновить пароли (одинаковый пароль только для тестирования) для всех пользователей. Я уже сделал это для одного, и это работает, теперь мне нужен быстрый способ.
Привет, Джей… дело в том, что мне не нужно обновлять всех пользователей, только некоторых со случайным набором ID.
Я пробовал u = User.find_by_id([150,152,167,258,665]),
но это всегда возвращает пользователя с ID 150 и меняет пароль только для него. Также пробовал User.find(id: 150,152....), но это не помогло…
Примечание: я пытаюсь мигрировать форум на другую платформу для обсуждений, и есть несколько пользователей, которые написали много сообщений, но больше не заходят на форум (по какой-то причине столбцы password_hash и salt пусты для этих пользователей, скрипт импорта пользователей не позволяет импортировать тех, у кого эти значения не определены в базе данных PGSQL), поэтому я не могу позволить им сбросить пароли. Что я могу сделать, так это задать сложный пароль, и они, конечно, смогут позже воспользоваться опцией «Забыли пароль» и установить новый.