Compare commits

...

No commits in common. 'master' and 'wy_branch' have entirely different histories.

@ -105,6 +105,7 @@ class LoginView(FormView):
@method_decorator(csrf_protect)
@method_decorator(never_cache)
def dispatch(self, request, *args, **kwargs):
return super(LoginView, self).dispatch(request, *args, **kwargs)
def get_context_data(self, **kwargs):
@ -116,23 +117,24 @@ class LoginView(FormView):
return super(LoginView, self).get_context_data(**kwargs)
def form_valid(self, form):
# 修复问题4: 引入新变量避免重新赋值'form'
auth_form = AuthenticationForm(data=self.request.POST, request=self.request)
form = AuthenticationForm(data=self.request.POST, request=self.request)
if auth_form.is_valid():
if form.is_valid():
delete_sidebar_cache()
logger.info(self.redirect_field_name)
auth.login(self.request, auth_form.get_user())
auth.login(self.request, form.get_user())
if self.request.POST.get("remember"):
self.request.session.set_expiry(self.login_ttl)
return super(LoginView, self).form_valid(auth_form)
return super(LoginView, self).form_valid(form)
# return HttpResponseRedirect('/')
else:
return self.render_to_response({
'form': auth_form
'form': form
})
def get_success_url(self):
redirect_to = self.request.POST.get(self.redirect_field_name)
if not url_has_allowed_host_and_scheme(
url=redirect_to, allowed_hosts=[
@ -142,16 +144,15 @@ class LoginView(FormView):
def account_result(request):
# 修复问题1和2: 重命名变量避免与内置函数冲突
request_type = request.GET.get('type')
user_id = request.GET.get('id')
type = request.GET.get('type')
id = request.GET.get('id')
user = get_object_or_404(get_user_model(), id=user_id)
logger.info(request_type)
user = get_object_or_404(get_user_model(), id=id)
logger.info(type)
if user.is_active:
return HttpResponseRedirect('/')
if request_type and request_type in ['register', 'validation']:
if request_type == 'register':
if type and type in ['register', 'validation']:
if type == 'register':
content = '''
恭喜您注册成功一封验证邮件已经发送到您的邮箱请验证您的邮箱后登录本站
'''
@ -218,4 +219,4 @@ class AvatarUpdateView(LoginRequiredMixin, FormView):
form.save()
delete_sidebar_cache()
messages.success(self.request, _('Avatar updated successfully.'))
return super().form_valid(form)
return super().form_valid(form)

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save