我一直在尝试获取django ajax uploader
在我的django application
工作.我一定是脑死亡了:(因为我无法让它工作——根据许多代码用户的说法,这应该是一件容易的事情。
我已经安装了 django ajax uploader并将其添加到已安装的应用程序中。我决定不使用 STATIC_URL
s 并改为输入 css and js
文件进入MEDIA_ROOT
并使用MEDIA_URL
为他们服务。
我还添加了 anonymous function里面<script>
标签 start.html
如step4 of the doc中所述- 将操作更改为 {% 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
输入元素足以导致文件上传?还是我必须调用 $('#file-uploader').change(
在我的 JavaScript 中?
2.我只需要将选定的文件写入MEDIA_ROOT/uploads
文件夹,这是我认为默认的 LocalUploadBackend
做。在 urls.py 中,我映射了 views.import_uploader
到 url ajax_upload
url(r'^ajax_upload$', 'views.import_uploader',name='ajax_upload'),
仍然没有发生文件上传..
我无法从 github 站点中的给定代码中看出太多内容。如果有人可以帮助我,我将不胜感激
最佳答案
除了 html 之外的一切看起来都很好。但是,您应该检查是否有 python 2.7,因为 2.6+ 与 django-ajax-uploader 不兼容。 (反之亦然!)
如果您继续使用 python 2.7,您应该克隆 https://github.com/lazerscience/django-ajax-uploader
git clone https://github.com/lazerscience/django-ajax-uploader
cd django-ajax-uploader
python setup.py install
这应该足够了。 (不要忘记像存储库中的示例一样更改 html,是的,#file-upload 可以与 jQuery 一起使用。
关于javascript - 在 View 和模板中使用 django ajax uploader ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10646296/