Пользовательские изображения нельзя добавить к подготовленным пользователям

У нас есть несколько тестовых пользователей, которые регулярно взаимодействуют с нашим сайтом. Несколько из них — автоматические письма (например, от Digital Ocean, AWS и т. д.). Было бы здорово, чтобы их можно было легко идентифицировать во входящих сообщениях.

У Digital Ocean есть Gravatar, и даже для тестовых пользователей применяется полезное изображение в качестве аватара:

Однако, когда я пытаюсь добавить собственное изображение (в данном случае для AWS), появляется следующее:

Если у нас есть Gravatar, почему нельзя использовать собственные изображения?

2 лайка

Поскольку Gravatar берётся из адреса электронной почты, а кастомный аватар должен быть привязан к пользователю, это невозможно, так как пользователь находится в состоянии staging. И никто никогда не создавал систему, где администратор мог бы менять аватар для пользователей в staging.

Просто предположение, но вы, вероятно, уже знали об этой возможности.

2 лайка

У меня есть обходное решение для этой проблемы. Оно требует работы в консоли Rails (сначала сделайте резервную копию!):

На сервере

cd /var/discourse
./launcher enter app
rails c

Преобразовать пользователя

Затем преобразуйте пользователя, чтобы он больше не был в статусе «staged»:

Email-адрес пользователя в статусе staged, которого нужно преобразовать

User.find_by_email("=EMAIL=").update(staged: false)

Загрузить его фотографию

:up_arrow: Как и для любого другого пользователя

Преобразовать обратно в staged

Вероятно, это не обязательно, если только вы не хотите, чтобы пользователь остался в статусе «staged»

User.find_by_email("=EMAIL=").update(staged: true)

Готово! Не забудьте выйти из консоли.

У меня пока не возникало проблем с этим методом, но гарантий я не даю!

2 лайка

Честно говоря, я не могу придумать никаких недостатков в том, чтобы разрешить администраторам устанавливать аватары для пользователей в статусе «staged».

Добавлю метку pr-welcome к этому.

1 лайк