EDIT: Ich klassifiziere dies neu als Fehler, damit sich jemand, der sich damit besser auskennt als ich, das ansehen kann.
Bei einer Reihe von Uploads war die Dateiendung „unknown". Das bedeutet, dass es unmöglich ist, Miniaturansichten zu generieren. Ich vermute, das ist passiert, als ein Backup auf eine neue Site verschoben wurde und anschließend die Miniaturansichten neu generiert werden mussten.
Meiner Meinung nach sollte beim Versuch, Miniaturansichten zu generieren, wenn die Dateiendung „unknown" ist, die Endung ersetzt werden, etwa so:
upload.extension = upload.original_filename.split('.').last
Es scheint, als hätte ich diese vier Stunden nicht investieren müssen, wenn das irgendwo implementiert wäre.
Moment. Das sieht nach dem Problem aus. Warum wird false zurückgegeben, statt die Dateiendung aus dem Dateinamen zu extrahieren?
Die unangenehmen Details folgen.
Ich habe eine Site von /community auf community.example.com verschoben, indem ich ein Backup erstellt und wiederhergestellt habe. Ich habe die Uploads mit folgendem Befehl repariert:
RAILS_ENV=production bundle exec script/discourse remap '/community/uploads' '/uploads'
Aber die Avatare sind immer noch der „Gray Man".
Wenn ich mir user.user_avatar.custom_upload.url anschaue und diese URL in den Browser einfüge, erhalte ich den gewünschten Avatar. Es scheint, als müsste ich die Benutzer neu „backen".
Ich dachte, vielleicht würde ein
rake avatars:refresh
oder
rake avatars:clean
das Problem beheben, aber leider ohne Erfolg.
Was übersehe ich?