Frage

Ich arbeite an einem Projekt, bei dem mehrere Dateien verschiedener Typen hochgeladen werden müssen.

Ich möchte die Dateien in der Datenbank speichern (ich bin mir nicht sicher, ob dies auch die beste Idee ist) als verschachteltes Modell. Kann als Dokument bezeichnet werden.

Ich habe folgende Fragen.

  1. Muss ich ein Plugin / Edelstein verwenden, ich habe keine einfache Implementierung gefunden.

  2. Wenn ja, was wäre das beste Edelstein / Plugin dafür? Soweit ich paperclip herausgibt, unterstützt das Speichern in der Datenbank, aber Attachment_FU.

  3. Ist es möglich, es mit JQuery zu tun, ohne die Seite zu erfrischen?

Ich möchte auch einige Fehler in Bezug auf Dateigrößen und Typen behandeln.

Grüße, Hardik

PS: Ich verwende Rails 2.3.5

War es hilfreich?

Lösung

Erstens, noch nie Speichern Sie jemals Dateien in der Datenbank!

Wenn Sie Dateien in der Datenbank speichern, müssen Sie sie abfragen und den gesamten Rails -Stack durchlaufen, um die Datei zu erhalten. Wie Sie sich vorstellen können: Das ist langsam. Ein Webserver ist viel schneller bei der Lieferung von Dateien und statischen Inhalten, da sie dafür erstellt werden. Wenn Ihre Website größer wird, wäre es eine gute Idee, Ihren statischen Inhalt wie Amazon S3 oder andere Asset -Hosts an einen anderen Ort zu bringen. Wenn Ihre Dateien nicht in der Datenbank sind, sind sie unabhängig und leicht zu bewegen (der Image_Tag -Helfer ist dann Ihr bester Freund).

  1. Natürlich Du nicht müssen ein Plugin/Edelstein verwenden. Sie können immer alles selbst implementieren, aber das ist natürlich eine schlechte Idee, weil andere dieses Rad bereits erfunden haben, was Ihnen viel Zeit spart.

  2. Paperclip ist immer noch meine Wahl, ganz nett und meiner Meinung nach leichter zu handhaben als Attemment_FU. Es hat auch Ihre angeforderten Validierungen.

  3. Sicher, da gibt es http://www.uploadify.com/ Ermöglicht beispielsweise mehrere Datei -Uploads und die Dinge, die Sie sich vorstellen können :)

Grüße,

Alex

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top