如果我有以下网址:
urlpatterns = patterns('',
url(r'^projects-json$', 'projects.views.list'),
)
我转到/projects-json
网址解析得很好。请注意,没有斜杠。
但是我想要一个点,而不是URL中的连字符,所以我用这种方式重写了url conf:
urlpatterns = patterns('',
url(r'^projects\.json$', 'projects.views.list'),
)
现在,如果我转到/projects.json
,我会被重定向到/projects.json/
并获得404作为后果!如果我在url模式中添加一个尾部斜杠,我将在带有尾部斜杠的URL处获得OK响应。但我只想要一个简单的事情:匹配/projects.json
而没有任何重定向和斜线。 Django可以这样做吗?我已经失去了很多时间来解决这个原始问题。有人能发现错误吗?
settings.APPEND_SLASH = False
。但看起来没关系。万一它可能很重要:
MEDIA_ROOT = ''
MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/admin-media/'
答案 0 :(得分:5)
适用于我(使用APPEND_SLASH = False
)。它可能是浏览器问题,某些浏览器(例如Firefox)缓存重定向,因此它会在服务器上没有重定向后重定向您。在另一个浏览器中尝试。