在Django身份验证中使用PasswordChangeView
时:
path('password_change/', auth_views.PasswordChangeView.as_view(
template_name='accounts/password_change.html',
success_url='accounts/password_change_success.html'),
name='password_change'),
与在success_url
中传递PasswordChangeDoneView
并覆盖success_url
时一样,PasswordResetView
是否覆盖PasswordResetDoneView
?来自docs:
PasswordResetDoneView 如果PasswordResetView没有设置明确的success_url URL,则默认情况下会调用此视图。
文档对success_url
中的PasswordChangeView
和PasswordChangeDoneView
之间的行为保持沉默。
答案 0 :(得分:1)
success_url
[Django-doc]是在表单成功的情况下重定向(通过302 HTTP响应)到的URL。
在PasswordChangeView
[Django-doc]中,我们在source code [GitHub]中看到它使用了:
LoadChildren
因此,如果您自己不自己指定一个class PasswordChangeView(PasswordContextMixin, FormView):
form_class = PasswordChangeForm
success_url = reverse_lazy('password_change_done')
template_name = 'registration/password_change_form.html'
title = _('Password change')
# ...
,它将重定向到名称为success_url
的视图。