1

我正在开发中运行 Django。在 settings.py 我设置了 MEDIA_URL

MEDIA_ROOT = os.path.join(BASE_DIR, 'fileuploader/uploaded_files')
MEDIA_URL = 'fileuploader/uploaded_files/'

然后在 ursl.py 我有,

if settings.DEBUG:
    urlpatterns += patterns('', url(r'^media/(?P<path>)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT,}),)

据我了解,这应该意味着任何 url 媒体/文件名都将提供文件,而不是仅仅请求它。

在模板中,通过模型我可以获取文件名和 url。但我不能把它变成一个可链接的路径来下载文件。

<p>File URL link <a href="media{{ item.upload.name }}">media{{ item.upload}}</a></p>

顺便说一下 item.upload 和 item.upload.name 产生相同的字符串。文件存储中的文件名是 ./TESTFILE.txt 是否需要去掉开头的“./”?

提交 26 是项目https://github.com/shanegibney/djangoForum

谢谢

4

1 回答 1

1

我添加了 MEDIA_URL 标记,这允许文件下载。

<p>URL <a href="/{{ MEDIA_URL }}{{ item.upload.name}}">media{{ item.upload}}</a></p>

同样在 urls.py 到最后我添加,

urlpatterns = [
   ......
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
于 2016-06-01T11:43:59.640 回答