我想在我的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