Frage

Um eine Datei auf einen Server hochladen ich schreibe in Clojure brauche ich ein Client-Formular, dass in etwa so aussieht:

<form action="/file" method="post" enctype="multipart/form-data">
<input name="file" type="file" size="20" />
<input type="submit" name="submit" value="submit" />

Allerdings kann ich nicht in die Dokumentation zu Schluckauf oder in Compojure finden Sie ein Formular wie diese zu erstellen. Die Probe Ich habe sieht wie folgt aus:

[:h2 "Choose a file to upload"]
:form {:method "post" :action "/upload"}
[:input.math {:type "text" :name "a"}] [:span.math " + "]
[:input.math {:type "text" :name "b"}] [:br]

Also meine Frage ist, wo ist die Dokumentation zu finden, wie diese geändert werden sollen, um eine Form zu machen, die eine Datei hochladen, werden?

War es hilfreich?

Lösung

Die Datei-Upload-Unterstützung für Compojure in der multipart-params Ring Middleware zu finden. Hier einige Beispiele dafür, wie es zu benutzen:

Haben Sie immer einen Blick auf Ring-Middleware-Dokumentation, es ist voll von großem Code!

Aktualisieren : Haben Sie Ihre Frage gleich beim ersten Mal nicht lesen! Um ein Formular wie diese zu erzeugen:

<form action="/file" method="post" enctype="multipart/form-data">
  <input name="file" type="file" size="20" />
  <input type="submit" name="submit" value="submit" />
</form>

Das sollte es tun:

[:form {:action "/file" :method "post" :enctype "multipart/form-data"}
 [:input {:name "file" :type "file" :size "20"}]
 [:input {:type "submit" :name "submit" :value "submit"]]

Ich habe es aus dem Gedächtnis gemacht, so dass es nicht getestet ist.

Andere Tipps

[:input {:type "submit" :name "submit" :value "submit"]]

Missing }

[:input {:type "submit" :name "submit" :value "submit"]}]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top