Je viens d’essayer de modifier le titre d’un ancien sujet. J’ai ensuite réalisé que toutes les images du sujet sont désormais des fichiers transparent.png et ne s’affichent pas correctement.
La commande rake uploads:recover suivie de rake posts:rebake n’a pas résolu le problème.
Je peux accéder à l’image via https://talk.zabanshenas.com/uploads/default/original/3X/8/7/8726fbef7b69ac8226d28568b46f3e06afe2fb4f.jpeg
Le téléchargement lui-même est : 
Cependant, lorsque j’exécute :
Upload.where( "url LIKE '%8726fbef7b69ac8226d28568b46f3e06afe2fb4f%'" )
j’obtiens :
=> []
Une idée ?
Si je télécharge exactement la même image ailleurs, l’ancien afficherait également l’image après la régénération. Je pense donc que cela concerne l’indexation de certains fichiers téléchargés anciens. Comment puis-je réindexer tous les fichiers téléchargés à nouveau ? Ou mieux encore, indexer ceux qui manquent.
Mise à jour :
J’ai consulté certaines tâches Rake et j’ai vu rake posts:recover_uploads_from_index, qui semble résoudre mon problème. Cependant, je rencontre l’erreur suivante :
undefined method `split' for nil:NilClass
from /var/www/discourse/app/models/site_setting.rb:151:in `s3_base_url'
Je n’ai pas activé les uploads S3 pour mon site
![]()
Mise à jour :
J’ai appliqué une solution temporaire et peu élégante pour corriger l’erreur ci-dessus (en commentant cette ligne) puis j’ai exécuté la tâche Rake. Mais ce n’était pas ce à quoi je m’attendais :
Recherche de upload://dC9HyffX3S1XbwwdUOsHe5aMyJX.jpeg (dC9HyffX3S1XbwwdUOsHe5aMyJX) dans l'index
Saut de upload://dC9HyffX3S1XbwwdUOsHe5aMyJX.jpeg dans https://talk.zabanshenas.com/t/topic/4430/1 car le nom de fichier semble trop court
Recherche de upload://kWx14u8XkQ8qd6NvOoDLN6usTl8.jpeg (kWx14u8XkQ8qd6NvOoDLN6usTl8) dans l'index
Saut de upload://kWx14u8XkQ8qd6NvOoDLN6usTl8.jpeg dans https://talk.zabanshenas.com/t/topic/4430/1 car le nom de fichier semble trop court
Je suis allé plus loin dans la tâche rake rake uploads:recover. Je pense qu’il y a un problème dans la ligne suivante :
À ma connaissance, tous les fichiers dans uploads/default/original devraient être ajoutés à @paths. Cependant, j’ai essayé d’écrire @paths dans un fichier et je ne vois que des fichiers tombstone listés.
Est-ce que je manque quelque chose ici ?
@cvx
Je pense que cela devrait ressembler à :
concat(Dir.glob(File.join(
Rails.root, "public", Discourse.store.upload_path,
'original',
'**',
'*.*'
)))
