Python 如何在Django注册中配置简单后端
我需要知道如何将Python 如何在Django注册中配置简单后端,python,django,django-registration,Python,Django,Django Registration,我需要知道如何将success\uURL传递到django-registration-1.0中使用基于类的视图的简单后端 在1.0之前,我曾经 from registration.views import register url(r'^accounts/register/$', register, {'backend': 'registration.backends.default.DefaultBackend','form_class': RegistrationForm},
success\uURL
传递到django-registration-1.0中使用基于类的视图的简单后端
在1.0之前,我曾经
from registration.views import register
url(r'^accounts/register/$', register, {'backend':
'registration.backends.default.DefaultBackend','form_class': RegistrationForm},
name='registration_register'),
我把它改成这样了
from registration.backends.simple.views import RegistrationView
url(r'^accounts/register/$',
RegistrationView.as_view(success_url=settings.LOGIN_REDIRECT_URL),
name='registration_register')
后端似乎可以工作,但是没有从URLConf获取success\uURL
我该如何解决这个问题
更新:
我已经通过自己的RegistrationView
实现了简单RegistrationView
的子分类,并至少作为临时解决方案覆盖了success\u url
,直到我找到更好的解决方案
from registration.backends.simple.views import RegistrationView as SimpleRegistrationView
class RegistrationView(SimpleRegistrationView):
def get_success_url(self, request, user):
return (settings.LOGIN_REDIRECT_URL, (), {})
代码
url(r'^accounts/register/$',
RegistrationView.as_view(success_url=settings.LOGIN_REDIRECT_URL),
name='registration_register')
…在技术上是正确的,但django注册库中似乎有一个bug,这意味着它将有效地忽略此值,因此如果您确实想要一些有效的方法,则必须重写get\u success\u url()
方法