Ich benutze die Büroklammer Juwel, um Dateien an Modelle anzuhängen. Wenn Sie eine Datei mit Paperclip hochladen, wird die Datei NUR gespeichert, wenn das Modell gespeichert wird. Wenn das Modell ungültig ist, wird die hochgeladene Datei daher nicht gespeichert. Gibt es eine Möglichkeit, die hochgeladene Datei vorübergehend zu speichern, sodass der Benutzer die gleiche Datei nicht hochladen muss, wenn das Modell ungültig ist?Mit Rails Paperclip gem, wie Sie die hochgeladene Datei vorübergehend speichern, wenn das Modell ungültig ist
5
A
Antwort
2
definieren before_save
Methode, die überprüft, ob das Objekt gültig ist, wenn die Datei nicht auf der Festplatte speichern, geben Sie ihm einen eindeutigen Namen (erstellen einige Hash)
Setzen Sie, dass Sie in der Form, in einer versteckten zurückschicken
Feldlöscht Upload-Feld in Form
Jetzt im else-Zweig der Prüfung before_save
Methode, wenn es ein hidden_field
previous_upload war oder wie man es nennen wenn das Bild laden und sie die papercli zuweisen p Attribut, kann es den Rest herausfinden
attr_accessor :previous_upload
def before_save
if valid?
if previous_upload
paperclip_file = #Load paperclip_file from /tmp
else
previous_upload = nil
end
else
previous_upload = "Some unique key for each upload like ip and time or such"
# Save paperclip_file with name previous_upload to /tmp
end
end
Verwandte Themen
- 1. Ruby on Rails PaperClip Gem validate_attachement Fehler
- 2. Paperclip gem bug - Ruby on Rails
- 3. Paperclip gem zeigt keine Bilder
- 4. Öffnen Sie die temporäre Datei vor dem Speichern in Rails Modell
- 5. So speichern Sie die hochgeladene Datei in JSF
- 6. Wie/wo vorübergehend ActiveRecord-Objekte speichern, wenn nicht in Sitzung?
- 7. Rails 3: Wie ein Verfahren zum Gem Modell hinzugefügt werden, ohne die Gem Quelle Ändern
- 8. wie mixin gem-modules in ruby-on-rails modell
- 9. Paperclip Gem - "Bild hat Inhalte, die nicht das sind, was sie angeblich sind" Fehler
- 10. Wie hochgeladene Datei
- 11. Rails Paperclip polymorphe Stile
- 12. Datei hochladen Base64 codierte Zeichenfolge in PaperClip mit Rails
- 13. Bild in der Datenbank speichern mit Rails Paperclip-Plugin
- 14. Vorübergehend unscope Modell Assoziationen
- 15. Mehrere Inhaltstypen mit Paperclip und Rails bestätigen
- 16. Django: Speichern Sie eine hochgeladene Datei in einem FileField
- 17. Rails4.2: Bilder nicht mit Aws S3/Paperclip Gem
- 18. So speichern Sie das hochgeladene Bild in IndexedDB Javascript
- 19. Rails paperclip amazon aws s3 gem, wie man Bild URL ändert?
- 20. Wie binden Sie die hochgeladene Datei an die Objekteigenschaft an?
- 21. Verschieben Sie die hochgeladene Datei im Netzlaufwerk
- 22. Laden Sie eine WAV-Datei mit Paperclip und speichern Sie beide. WAV und. MP3-Versionen
- 23. Rails Datei.exist? gibt false zurück, wenn die Datei vorhanden ist
- 24. Dateien mit Paperclip ohne Upload speichern
- 25. FTP Hochgeladene Datei ist beschädigt
- 26. Twitter Gem und Rails Ausgabe speichern Benutzer
- 27. App Store-Fehler: Die von Ihnen hochgeladene Binärdatei war ungültig
- 28. ASP.NET MVC Validation mit excludePropertyErrors = true macht leer, wenn das Modell ungültig ist
- 29. Ruby-Rails - Formular ist ungültig
- 30. So kopieren Sie eine Datei mit Paperclip
Danke für die Idee. Ich werde es ausprobieren :) – gsmendoza