匹配点。如果我有以下网址的conf:奇Django的行为,而在URL
urlpatterns = patterns('',
url(r'^projects-json$', 'projects.views.list'),
)
我去/projects-json
URL解析罚款。请注意,没有结尾斜杠。
但我想有一个点,而不是在URL中的连字符,所以我重写URL的conf这样:
urlpatterns = patterns('',
url(r'^projects\.json$', 'projects.views.list'),
)
现在,如果我去/projects.json
我重定向到/projects.json/
,并得到404作为consequense!如果我在url模式中添加一个尾部斜线,我将在URL上使用尾部斜线得到OK响应。但我只想要一件简单的事情:匹配/projects.json
而不用任何重定向和斜线。 Django能做到这一点吗?我已经为这个原始问题失去了很多时间。任何人都可以发现错误?
settings.APPEND_SLASH = False
。不过看起来并不重要。以防万一它可能很重要:
MEDIA_ROOT = ''
MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/admin-media/'
适合我的作品(带'APPEND_SLASH = False')。它可能是浏览器问题,某些浏览器(例如Firefox)缓存重定向,因此在服务器根本没有重定向之后它会重定向您。在另一个浏览器中尝试。你如何设置'APPEND_SLASH'?在'settings.py'中? – DrTyrsa 2012-02-14 13:56:26
Omg!这是真的!重定向缓存在Firefox中。请你可以发表你的评论作为回复。我会接受它。 – nkrkv 2012-02-14 14:04:37