请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

登录时加入“@”页面无反应

在登录页面只要存在符号@,点击登录按钮会由“快速登录”变为“登录”,且点击无反应

# -*- coding=utf-8 -*-
from django.shortcuts import render
from django.contrib.auth import authenticate,login
from django.contrib.auth.backends import ModelBackend
from django.db.models import Q
from django.views.generic.base import View
from django.contrib.auth.hashers import make_password

from.models import UserProfile

# Create your views here.


class CustomBackend(ModelBackend):
    def authenticate(self, username=None, password=None, **kwargs):
        try:
            user = UserProfile.objects.get(Q(username=username)|Q(email=username))
            if user.check_password(password):
                return user
        except Exception as e:
            return None

def User_login(request):
    if request.method == "POST":
        user_name = request.POST.get("username", "")
        pass_word = request.POST.get("password", "")
        user = authenticate(username=user_name,password=pass_word)
        if user is not None:
            login(request,user)
            return render(request,"index.html")
        else:
            return render(request,"login.html",{})
    elif request.method == "GET":
        return render(request,"login.html",{})


正在回答 回答被采纳积分+3

2回答

提问者 逍遥生4 2018-05-02 02:03:15

自己排查了好久,终于发现了问题。问题出在源码的js文件里,源码载入的第三个js,validateDialog.js,它会用js重写登录页面的登录按钮,导致form表单的submit被覆盖无法触发。解决办法就是删掉登录页面的validateDialog.js

1 回复 有任何疑惑可以回复我~
  • 可以可以,但是最好在JS完成表单验证后,让其表单数据提交到后台进行交互,毕竟JS的验证可以增加用户体验
    回复 有任何疑惑可以回复我~ 2018-05-02 09:19:08
Noah_________ 2018-05-02 01:08:20

# 在settings.py里面重载AUTHENTICATION_BACKENDS了吗?

AUTHENTICATION_BACKENDS = (
    'users.views.CustomBackend',
)

点击登录按钮会由“快速登录”变为“登录”是什么意思?

0 回复 有任何疑惑可以回复我~
  • 提问者 逍遥生4 #1
    重载了,不是这里的问题
    就是字面意思,“立即登录”这四个字会变成“登录”,然后再点击就没反应了,从html的form那里断掉响应
    回复 有任何疑惑可以回复我~ 2018-05-02 02:00:21
  • bobby 回复 提问者 逍遥生4 #2
    这个地方我为了防止用户反复提交 所以将这个按钮disable了 你现在可以http://apply.projectsedu.com/ 通过这里申请加入github项目 下载我提供的最新前端源码 我已经修复了这个问题
    回复 有任何疑惑可以回复我~ 2018-05-03 10:40:48
  • 提问者 逍遥生4 回复 bobby #3
    好的,谢谢
    回复 有任何疑惑可以回复我~ 2018-05-03 21:20:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信