РЕДАКТИРОВАНИЕ: Я переоцениваю это как ошибку, чтобы кто-то, кто разбирается в этом лучше меня, мог посмотреть на это.
У множества загруженных файлов расширение было «unknown». Это означает, что невозможно сгенерировать миниатюры. Я думаю, что это произошло при переносе резервной копии на новый сайт, после чего потребовалось повторно сгенерировать миниатюры.
Я считаю, что при попытке сгенерировать миниатюры, если расширение равно «unknown», следует заменить его, например:
upload.extension = upload.original_filename.split('.').last
Кажется, если бы это было реализовано где-то, я бы не потратил на это 4 часа.
Погодите. Вот в чём проблема. Почему возвращается false, а не расширение из имени файла?
Далее следуют подробные детали.
Я перенёс сайт из /community в community.example.com, сделав резервную копию и восстановив её. Я исправил загрузки с помощью команды:
RAILS_ENV=production bundle exec script/discourse remap '/community/uploads' '/uploads'
Но аватары всё ещё отображаются как «Серый человек».
Когда я смотрю на user.user_avatar.custom_upload.url и вставляю этот URL в браузер, я получаю нужный аватар. Похоже, мне нужно «пересоздать» пользователей.
Я думал, что, возможно, команда
rake avatars:refresh
или
rake avatars:clean
исправит это, но безрезультатно.
Что я упускаю?