gpt4 book ai didi

python - django-registration-redux - NoReverseMatch 在/accounts/register/

转载 作者:太空宇宙 更新时间:2023-11-03 18:01:01 25 4
gpt4 key购买 nike

我正在关注 "Tango with Django" tutorial其中一章是关于使用 Registration View Redux 来处理用户身份验证。除了我注册新用户之外,一切正常。用户实际上被添加得很好。但提交后,我没有被重定向到“注册完成”页面,而是收到以下错误:

NoReverseMatch at /accounts/register/

Reverse for 'registration' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []
Request Method: POST
Request URL: http://192.168.2.10:5555/accounts/register/
Django Version: 1.7
Exception Type: NoReverseMatch
Exception Value:
Reverse for 'registration' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []
Exception Location: C:\Python34\Lib\site-packages\django\core\urlresolvers.py in _reverse_with_prefix, line 463
Python Executable: C:\Python34\python.exe
Python Version: 3.4.2
Python Path:
['D:\\_python_projects\\tango_with_django_project',
'C:\\Python34\\Lib\\site-packages\\setuptools-8.2.1-py3.4.egg',
'C:\\Python34\\lib\\site-packages\\setuptools-8.2.1-py3.4.egg',
'C:\\Python34\\Lib\\site-packages',
'C:\\Windows\\system32\\python34.zip',
'C:\\Python34\\DLLs',
'C:\\Python34\\lib',
'C:\\Python34']
Server time: Sat, 27 Dec 2014 21:04:15 -0500

回溯:

Environment:


Request Method: POST
Request URL: http://192.168.2.10:5555/accounts/register/

Django Version: 1.7
Python Version: 3.4.2
Installed Applications:
('django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rango',
'registration')
Installed Middleware:
('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')


Traceback:
File "C:\Python34\Lib\site-packages\django\core\handlers\base.py" in get_response
111. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python34\Lib\site-packages\django\views\generic\base.py" in view
69. return self.dispatch(request, *args, **kwargs)
File "C:\Python34\Lib\site-packages\registration\views.py" in dispatch
79. return super(RegistrationView, self).dispatch(request, *args, **kwargs)
File "C:\Python34\Lib\site-packages\django\views\generic\base.py" in dispatch
87. return handler(request, *args, **kwargs)
File "C:\Python34\Lib\site-packages\registration\views.py" in post
35. return self.form_valid(request, form)
File "C:\Python34\Lib\site-packages\registration\views.py" in form_valid
90. return redirect(to, *args, **kwargs)
File "C:\Python34\Lib\site-packages\django\shortcuts.py" in redirect
74. return redirect_class(resolve_url(to, *args, **kwargs))
File "C:\Python34\Lib\site-packages\django\shortcuts.py" in resolve_url
158. return urlresolvers.reverse(to, args=args, kwargs=kwargs)
File "C:\Python34\Lib\site-packages\django\core\urlresolvers.py" in reverse
546. return iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))
File "C:\Python34\Lib\site-packages\django\core\urlresolvers.py" in _reverse_with_prefix
463. (lookup_view_s, args, kwargs, len(patterns), patterns))

Exception Type: NoReverseMatch at /accounts/register/
Exception Value: Reverse for 'registration' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

我的注册表模板:

{% extends "rango/base.html" %}
{% block title %}Register{% endblock %}

{% block body_block %}
<h1>Register to Rango</h1>
<form method="post" action=".">
{% csrf_token %}
{{ form.as_p }}

<input type="submit" value="Submit" />
</form>
{% endblock %}

url.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.conf import settings


urlpatterns = patterns('',
# Examples:
# url(r'^$', 'tango_with_django_project.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),

url(r'^admin/', include(admin.site.urls)),
url(r'^accounts/', include('registration.backends.simple.urls', namespace='registration')),
url(r'', include('rango.urls', namespace='rango')),

)

有什么想法吗?

最佳答案

您需要更改 urls.py 文件以添加扩展默认 RegistrationView 的类:

from registration.backends.simple.views import RegistrationView    
class MyRegistrationView(RegistrationView):
def get_success_url(self, request, user):
return '/rango/'

然后更新您的网址模式,使其如下所示:

url(r'^accounts/register/$', MyRegistrationView.as_view(), name='registration_register')

我希望这会有所帮助。

关于python - django-registration-redux - NoReverseMatch 在/accounts/register/,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com