我目前正在阅读有关django教程的探戈,并尝试在成功后使用重定向实现django注册。
我遵循了教程和我在a link中找到的另一个问题。
当我注册时,我得到了
TypeError at /accounts/register/
get_success_url() missing 1 required positional argument: 'user'
urls.py
from django.conf.urls import include, url, patterns
from django.contrib import admin
from registration.backends.simple.views import RegistrationView
class MyRegistrationView(RegistrationView):
def get_success_url(self, request, user):
return '/student/'
urlpatterns = [
url(r'^student/', include('student.urls')),
url(r'^admin/', admin.site.urls),
# Add in this url pattern to override the default pattern in accounts.
url(r'^accounts/register/$', MyRegistrationView.as_view(), name='registration_register'),
url(r'^accounts/', include('registration.backends.simple.urls')),
url(r'', include('registration.auth_urls')),
]
任何人都知道我可能做错了什么?
谢谢!
答案 0 :(得分:3)
事情发生了变化,现在你提供'用户'作为第一个位置参数。 request
方法没有get_success_url
个参数。您的代码应如下所示:
class MyRegistrationView(RegistrationView):
def get_success_url(self, user):
return '/student/'
请参阅:github上的旧RegistrationView和新RegistrationView。