Einer meiner Beiträge hat plötzlich seine Bilder verloren. Ich habe im Rails-Console PostCustomField.where(name: Post::MISSING_UPLOADS) ausgeführt und folgendes erhalten:
[#<PostCustomField:0x00005636227c20a0
id: 7335,
post_id: 36,
name: "missing uploads",
value:
"[\"upload://ljcw6gjRoPMD0IB5Vcc6K23VXIA.png\",
\"upload://v6caNgjm6wDrHzN8MQdXYnlNJEs.png\",
\"upload://bn2lC9z0Xp4Fit00p6KepGMZZ2h.png\",
\"upload://omhuL50n5VfAxY8Reyf2rQFoEWb.jpeg\",
\"upload://yJCRzx9SogObwuj1En0QciZdntF.jpeg\",
\"upload://wOeXgaPEBBia8oS0xxbOr5NKNWo.gif\",
\"upload://fuXMNACp8WoEHEr3ayciiVJjmNl.png\",
\"upload://MTIX7g8Wu11qaJasGg5yGsFvJA.jpeg\",
\"upload://oKle1GsOlPD85zeHiKRdUGJCCEM.jpeg\",
\"upload://zY43AR6Xpga92HNzdEnxQRIVpYE.gif\",
\"upload://ufigIPfGEPbDInHP4co0I0YDT51.png\",
\"upload://h7A1BJjNwZZwuUTYWXCeASk7UAh.png\",
\"upload://gmFGijsek8NmtfqBwAguIgkzDFP.png\",
\"upload://qPFQBe9zvnTmOnqMhpofQF3oqCh.png\"]",
created_at: Tue, 18 Feb 2020 17:44:40 UTC +00:00,
updated_at: Tue, 18 Feb 2020 17:44:40 UTC +00:00>,
Da es sich nur um 14 Bilder in einem einzigen Beitrag handelt, bin ich damit einverstanden, dies manuell zu reparieren. Ich habe jedoch keine Ahnung, wie ich die Originalbilder in meinem S3-Bucket finden kann. Ich habe versucht, hier nach den Dateinamen zu suchen, aber keine Ergebnisse erhalten:
Das Problem ist, dass die S3-Webkonsole anscheinend nur im aktuellen Ordner sucht. Wenn ich in einen bestimmten Ordner navigiere und nach einer darin enthaltenen Datei suche, findet sie diese. Wenn ich jedoch zum übergeordneten Ordner zurückkehre, findet sie sie nicht.
Danke, Michael. Das wäre hilfreich, aber ich kann nicht herausfinden, wie man den vollständigen Pfad erhält. In der Rails-Konsole kann ich Folgendes tun, aber es wird mir nicht der tatsächliche Dateiname angezeigt:
Das hängt von vielen Dingen ab, aber da die Datei angeblich fehlt, könnte sie ohnehin am falschen Ort sein. Jetzt, wo du den Dateinamen kennst, ist es nicht viel Arbeit, durch S3 zu stöbern und zu prüfen, ob du eine passende Datei findest.
Du könntest auch versuchen, einen Upload in der Datenbank zu finden, dessen SHA1 mit dieser Zeichenkette übereinstimmt und bei dem der Upload-Eintrag einen Pfad hat. Aber noch einmal: Wenn alles in Ordnung wäre, würden wir dieses Problem nicht diskutieren.