Django - urls.py - 带有哈希/磅(#)符号的文件名?

时间:2010-04-04 07:04:52

标签: python regex django

我正在使用django并意识到当用户想要访问的文件名(比方说照片)有英镑符号时,url.py中的条目不匹配。

有什么想法吗?

    url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root':
    MEDIA_ROOT},

它只是说:

"/home/user/project/static/upload/images/hello" does not exist

实际上文件名是:

hello#world.jpg

谢谢, 尼科

1 个答案:

答案 0 :(得分:9)

这实际上不是Django的错 - URL中的井号(#)表示在页面上加载指定的锚点。您需要在URL中对井号进行编码,以使浏览器请求完整的图像路径:

/home/user/project/static/upload/images/hello%23world.jpg

在Django模板中,您可以使用urlencode模板标记。