【发布时间】:2014-11-01 03:39:17
【问题描述】:
关于我的 django 项目中的 url,我遇到了一种对我来说真的没有意义的行为。这不是我的第一个 django 项目,所以我确定这很愚蠢,但我在第 2 天,不管它是什么,我都找不到。
我有一个项目投票。在投票/urls.py:
from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
url(r'^users/', include('users.urls')),
url(r'^manage/', include(admin.site.urls)),
)
在项目中,我有一个应用users,我有文件users/urls.py:
from django.conf.urls import patterns, url
from rest_framework.urlpatterns import format_suffix_patterns
from users import services
urlpatterns = patterns(
url(r'^register/$', services.RegisterUser.as_view()),
)
然而,当我运行服务器并导航到 localhost:8000/users/register/ 时,我收到 404 错误:
Using the URLconf defined in wevote.urls, Django tried these URL patterns, in this order:
^manage/
The current URL, users/register/, didn't match any of these.
由于某种原因,它没有拉入 users.urls,我不知道为什么。我在 INSTALLED_APPS 中有“用户”和“rest_framework”。任何帮助将不胜感激。
附加信息:来自settings.py:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'ujson',
'analytics',
'elections',
'offices',
'users'
)
还有,项目结构:
投票
- 分析
- 选举
- 办公室
-
用户
- urls.py
- ...
-
投票
- settings.py
- urls.py
- ...
- manage.py
- requirements.txt
【问题讨论】:
-
文件夹和文件的排列方式
-
首先,请显示您拥有的目录结构和
INSTALLED_APPS设置。另外,这很愚蠢,但是删除pyc文件并重新启动服务器有帮助吗?谢谢。 -
删除 pyc 文件正在重新启动服务器没有帮助。我还添加了 INSTALLED_APPS 部分以及文件夹/文件结构。是否有可能 users 是保留字?我将在另一个应用程序中尝试相同的操作,看看我是否得到相同的行为。
-
不是保留字问题。我将 users/urls.py 复制到 analytics/urls.py。现在,当我导航到 localhost:8000/analytics/register/ 时,它会搜索:^users/ 和 ^manage/,当我导航到 localhost:8000/users/register/ 时,它会搜索:^analytics/ 和 ^manage/
标签: python django django-urls