使用compojure,打ic和戒指上传文件
-
11-10-2019 - |
题
要将文件上传到我正在用Clojure编写的服务器上,我需要一个看起来像这样的客户端表单:
<form action="/file" method="post" enctype="multipart/form-data">
<input name="file" type="file" size="20" />
<input type="submit" name="submit" value="submit" />
但是,我找不到打ic或compojure的文档来创建这样的表格。我看起来像这样的样本:
[: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]
因此,我的问题是,在哪里找到应该修改此文件以制作将上传文件的表格的文档?
解决方案
可以在 multipart-params
戒指中间件。以下是如何使用它的一些示例:
- https://gist.github.com/562624/1DF418E4851E68952FC466713F377DF2E653AFDB
- http://www.prodevtips.com/2010/12/19/file-uploads-with-clojure-ring-and-and-compojure/
始终查看Ring Middleware文档,它充满了很棒的代码!
更新: :没有第一次阅读您的问题!生成这样的形式:
<form action="/file" method="post" enctype="multipart/form-data">
<input name="file" type="file" size="20" />
<input type="submit" name="submit" value="submit" />
</form>
这应该够了吧:
[:form {:action "/file" :method "post" :enctype "multipart/form-data"}
[:input {:name "file" :type "file" :size "20"}]
[:input {:type "submit" :name "submit" :value "submit"]]
我已经从内存完成了,因此未经测试。
其他提示
[:input {:type "submit" :name "submit" :value "submit"]]
失踪 }
[:input {:type "submit" :name "submit" :value "submit"]}]
不隶属于 StackOverflow