我想在我的Django视图中使用reverse()来避免硬编码,但得到“” '()'和关键字参数'{}'找不到“。这里是我的代码:反向登录参数'()'和关键字参数'{}'找不到
URL配置:
urlpatterns = patterns(
'',
url(r'^accounts/', include('accounts.urls', namespace="accounts")),
url(r'^admin/', include(admin.site.urls)),
)
urls.py
urlpatterns = patterns(
'',
url(r'^login/$', views.login, name='login'),
url(r'^signup/$', views.signup, name='signup'),
)
views.py:
def login(request):
return render(request, reverse("login"))
def signup(request):
return render(request, reverse("signup"))
这里是我的追踪信息:
环境:
请求方法:GET
请求URL:http://127.0.0.1:8000/accounts/login/
Django的版本:1.7
Python版本:2.7.5
安装的应用程序:
( 'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
“django.contrib中.messages',
'django.contrib.staticfiles',
'帐户')
安装中间件:
( 'django.contrib.sessions.middleware.SessionMiddleware',
“django.middleware.common.CommonMiddleware '
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
' django.contrib.messages .middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware')回溯: 文件 “/Users/feizhao/.virtualenvs/nahan/lib/python2.7/site-packages/django/core/handlers/base.py” (请求,* callback_args,** callback_kwargs)
登录的文件“/Users/feizhao/dropbox/nahan/accounts/views.py” 11. return render(request,reverse(“登录“)) 反向文件”/Users/feizhao/.virtualenvs/nahan/lib/python2.7/site-packages/django/core/urlresolvers.py“ 546. return iri_to_uri(resolver._reverse_with_prefix(view,prefix ,* args,** kwargs))
文件“/ User S /飞兆/ .virtualenvs /阿那含/ LIB/python2.7 /站点包/ django的/核心/ urlresolvers.py”在_reverse_with_prefix 463.(lookup_view_s,指定参数时,kwargs,LEN(模式),图案))异常类型:NoReverseMatch at/accounts/login/
异常值:未找到参数'()'和关键字参数'{}'的'login'反向。0模式尝试:[]
我已经看到了一些类似的问题在stackoverflow已经,如here,但没有帮助。
任何人都可以告诉我为什么这是错的?非常感谢!
谢谢,但我得到“TemplateDoesNotExist在/帐号/登录/ ”。我的模板是accounts/templates/accounts/ login.html,accounts/templates/accounts/signup.html。 – selfboot 2014-12-19 06:03:24
这是一个单独的问题,但我认为dir结构可能应该是'accounts/templates/signup.html' ...请参阅django TEMPLATE_DIRS和TEMPLATE_LOADERS的文档以及https://docs.djangoproject.com/en /1.7/ref/templates/api/#django.template.loaders.app_directories.Loader – Anentropic 2014-12-19 06:10:25
我将目录结构更改为accounts/templates/signup.html,但仍无法正常工作。 – selfboot 2014-12-19 07:16:51