基于ajax的会员登录
blog应用urls中:
urlpatterns = [ re_path('member/',views.member,name='member') ]
views中:
def member(request): res={'status':None, 'msg':None} if request.method == 'POST': username=request.POST.get('username') pwd=request.POST.get('pwd') isLogin=Member.objects.filter(username=username,pwd=pwd).first() if isLogin: res['status']= 1 res['msg']='登录成功!' else: res['status'] = 0 res['msg'] = '登录失败!请重新输入...' return HttpResponse(json.dumps(res)) print(res) return render(request,'member.html')
templates文件member.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .box{ width: 500px; margin: 200px auto; } #pwd{ position: relative; left:2px; } #b1{ position: relative; left:120px; } h3{ color: rgba(253,25,146,0.75); position: relative; left:100px; } </style> <script src="/static/js/jquery.min.js"></script> </head> <body> <div class="box"> <h3>会员登录</h3> <form> <div><span>username</span> <input type="text" name="username" id="username" value=""></div> <div style="margin-top: 5px"><span>password</span> <input type="password" name="pwd" id="pwd" value=""></div> <br> <input type="button" id="b1" name="dosubmit" value="登录"> </form> </div> </body> <script> $(function () { $('#b1').click(function () { $.post("{% url 'blog:member' %}", {username:$('#username').val(),pwd:$('#pwd').val(),'csrfmiddlewaretoken':"{{csrf_token}}" }, function(data){ if(data.status == 1){ alert(data.msg); location="{% url 'blog:booklist' %}" }else { alert(data.msg) } },'json') }) }) </script> </html>
数据库模型models中:
class Member(models.Model): username=models.CharField(max_length=32) pwd=models.CharField(max_length=70)
注意:python manage.py makemigrations
python manage.py migrate