【发布时间】:2012-05-25 15:41:57
【问题描述】:
我一直试图让django ajax uploader 在我的django application 中工作。我一定是脑死了 :( 因为我无法让它工作——这应该是一件容易的事,据许多用户说代码。
我已经安装了django ajax uploader并将其添加到已安装的应用程序中。我决定不使用STATIC_URLs,而是将css and js文件放入MEDIA_ROOT并使用MEDIA_URL为它们提供服务。
如step4 of the doc 中所述,我还在start.html 中的<script> 中包含anonymous function 标记- 将操作更改为{% url ajax_upload %}
在我的start.html 页面中,我需要一个文件输入元素,以便在选择文件时将文件上传到服务器上的某个位置。
所以我创建了这样的 html
<form enctype="multipart/form-data" method="post" action="{% url upload_without_ajax %}"> {% csrf_token %}
<input type="file" name="fselect" id="file-uploader"> </input>
</form>
start.html 由views.start 方法渲染
views.py -
def start(request, template_name):
csrf_token = get_token(request)
reqctx = RequestContext(request,{'csrf_token': csrf_token })
return render_to_response(template_name,reqctx)
import_uploader = AjaxFileUploader()
这是我的问题。
1. 给输入元素id=file-uploader 是否足以导致文件上传?或者我必须在我的javascript 中调用$('#file-uploader').change( 吗?
2.我只需要将选择的文件写入MEDIA_ROOT/uploads 文件夹,我认为默认的LocalUploadBackend 就是这样做的。在 urls.py 中,我将 views.import_uploader 映射到 url ajax_upload
url(r'^ajax_upload$', 'views.import_uploader',name='ajax_upload'),
仍然没有发生文件上传..
我无法从 github 站点中的给定代码中得到很多信息。如果有人可以帮助我,将不胜感激
【问题讨论】:
标签: javascript ajax django upload