博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BBS论坛(十六)
阅读量:5339 次
发布时间:2019-06-15

本文共 2501 字,大约阅读时间需要 8 分钟。

16.登录功能完成

(1)front/forms.py

class SigninForm(BaseForm):    telephone = StringField(validators=[Regexp(r'1[3578]\d{9}', message='请输入正确格式的手机号码')])    password = StringField(validators=[Regexp(r'[0-9a-zA-Z_\.]{6,15}', message='请输入正确格式的密码')])    remember=StringField()

(2)config.py

FRONT_USER_ID = 'FFFF'

(3)front/views.py

class SigninView(views.MethodView):    def get(self):        return_to = request.referrer        if return_to and return_to != request.url and return_to != url_for('front.signup') and safeutils.is_safe_url(                return_to):            return render_template('front/signin.html', return_to=return_to)        else:            return render_template('front/signin.html')    def post(self):        form = SigninForm(request.form)        if form.validate():            telephone = form.telephone.data            password = form.password.data            remember = form.remember.data            user = FrontUser.query.filter_by(telephone=telephone).first()            if user and user.check_password(password):                session[config.FRONT_USER_ID] = user.id                if remember:                    session.permanent = True                return restful.success()            else:                return restful.params_error(message='手机号或密码错误')        else:            return restful.params_error(message=form.get_error())

(4)front_signin.js

/** * Created by Administrator on 2018/6/9. */$(function(){    $('#submit-btn').on('click',function(event){        event.preventDefault();        var telephone_input=$('input[name=telephone]');        var password_input=$('input[name=password]');        var remember_input=$('input[name=remember]');        var telephone=telephone_input.val();        var password=password_input.val();        var remember=remember_input.checked?1:0;        zlajax.post({           'url':'/signin/',           'data':{               'telephone':telephone,               'password':password,               'remember':remember           },            'success':function(data){               if(data['code']==200){                   var return_to=$('#return-to-span').text();                   if(return_to){                       window.location=return_to;                   }else{                       window.location='/'                   }               }else{                   zlalert.alertInfo(data['message']);               }            }        });    });});

(5)signin.html

 

转载于:https://www.cnblogs.com/derek1184405959/p/9159926.html

你可能感兴趣的文章
leetcode——Best Time to Buy and Sell Stock
查看>>
Android LinearLayout 的几个属性
查看>>
strcpy函数里的小九九
查看>>
搭建ssm过程中遇到的问题集
查看>>
OpenLayers绘制图形
查看>>
tp5集合h5 wap和公众号支付
查看>>
Flutter学习笔记(一)
查看>>
iOS10 国行iPhone联网权限问题处理
查看>>
洛谷 P1991 无线通讯网
查看>>
[HIHO1184]连通性二·边的双连通分量(双连通分量)
查看>>
Codeforces Round #178 (Div. 2) B. Shaass and Bookshelf 【动态规划】0-1背包
查看>>
SparkStreaming 源码分析
查看>>
【算法】—— 随机音乐的播放算法
查看>>
mysql asyn 示例
查看>>
DataGrid 点击 获取 行 ID
查看>>
git 使用
查看>>
边框圆角方法
查看>>
asp.net WebApi自定义权限验证消息返回
查看>>
php中eval函数的危害与正确禁用方法
查看>>
20172315 2017-2018-2 《程序设计与数据结构》第十一周学习总结
查看>>