Изменить дату регистрации пользователя

Привет, ребята,

Сегодня у меня возник необычный запрос после миграции, в ходе которой мы пропустили все аккаунты, которые никогда не публиковали сообщения.

Пользователь, который никогда не писал, но ценит наличие аккаунта, попросил вернуть ему его аккаунт. Я сказал ему, что он может просто зарегистрироваться заново под своим старым именем пользователя, что он и сделал. Но теперь он хочет, чтобы дата его регистрации («участник с») была изменена на 2011 год, когда он зарегистрировал свой старый аккаунт…

Есть ли способ это сделать?

Подразумеваете ли вы под «участник с» раздел «Присоединился» в сводке вашего аккаунта?

Если у вас есть права администратора на сервере или в базе данных, вы можете изменить параметр created_at для этого пользователя в таблице Users.

Вы можете сделать это через консоль Rails следующим образом:

rails c
user = User.where(username: '<ваше-имя-пользователя>')
user.update(created_at: "2011-02-10 00:00:00.00000")

Также можно сделать это напрямую в базе данных PostgreSQL (хотя я не рекомендую этот способ):

update public.users set created_at='2011-02-10 00:00:00.00000' where username = '<ваше-имя-пользователя>';

Я протестировал это в своей локальной среде, и всё сработало корректно:

Было:

Стало:

Будьте очень осторожны, если решитесь на это. Я рекомендую сделать резервную копию базы данных перед любыми действиями :sweat_smile:

Огромное спасибо. Это был тот параметр, который мне нужно было изменить.