【发布时间】:2012-05-27 22:46:56
【问题描述】:
所以我有一个 django 应用程序,我访问了这个网址:
http://127.0.0.1:8000/stories
我明白了:
Request Method: GET
Request URL: http://127.0.0.1:8000/stories
"stories" does not exist
然后我检查了 urls.py,我看到了:
#stories
url(r'^stories/$',
StoryShowView.as_view(
context_object_name='story_list',
template_name='accounts/viewAndAddStory.html')
),
最后,我查看了我的 settins.py,我看到了:
#appends a slash if nothing is found without a slash.
APPEND_SLASH = True
不应该像上面设置的APPEND_SLASH,不带斜线的url 301重定向到带斜线的url,然后加载网页吗?
如果我做手动将斜线添加到 url,那么页面会按预期加载,每个人都喝点茶,早点结束。
更新:
我的 settings.py 中也有这个条目:
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
更新:
当我尝试访问 url 时,来自页面上的错误消息:
Django 版本:1.3.1
已解决:所以 okm 很赚钱,亲爱的。问题是我的网址 - 就在底部,我有这个:
if settings.DEBUG:
urlpatterns += patterns('',
url(r'^%s(?P<path>.*)$' % settings.MEDIA_URL[1:],
'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True})
)
然而,我没有做的是 MEDIA_URL 和 MEDIA_ROOT 没有在我的settings.py 中输入 - 它们都是空字符串 ('')
所以 url 查找的事情是找到我输入的所有 url,认为它们是 css 条目。我输入了 media_root(我的 css 等文件所在的文件夹)和 media_url(我用来指示获取静态文件的 url)的值,一切都很好。
【问题讨论】:
-
你有[
django.middleware.common.CommonMiddleware](docs.djangoproject.com/en/1.4/ref/middleware/…) in yourMIDDLEWARE_CLASSES`设置吗? -
是的,我也有这个
-
你的 django 版本是多少?也可以检查一下...
标签: django