def register(): """ 1.获取参数 2.校验参数 3.取到服务器验证码 4.比对验证码 5.成功创建user模型 添加数据库 6.返回值 :return: """ params_dict = request.json current_app.logger.error(params_dict) mobile = params_dict["mobile"] smscode = params_dict["smscode"] passwprd = params_dict["password"] #校验参数 if not all([mobile,smscode,passwprd]): return jsonify(erron=RET.PARAMERR,errmsg='参数为空') #效验手机号码是否正确 if not re.match('1[35678]\\d{9}',mobile): return jsonify(errno=RET.PARAMERR,errmsg="手机号码是否正确") #取到验证码 try: real_sms_code=redis_store.get("SMS_"+mobile) except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR,errmsg="数据查询失败") if not real_sms_code: return jsonify(errno=RET.NODATA,errmsg="验证码已过期") #校验验证码 if real_sms_code !=smscode: return jsonify(errno=RET.DBERR, errmsg="验证码输入错误") #生成新的用户 user=models.User() user.mobile=mobile user.nick_name=mobile user.last_login=datetime.now() user.password=passwprd #添加到数据库 try: db.session.add(user) db.session.commit() except Exception as e: current_app.logger.error(e) db.session.rollback() return jsonify(errno=RET.DBERR, errmsg="数据保存失败") #往sesson中添加数据表示已经登录 session["user_id"]=user.id session["mobile"]=user.mobile session["nick_name"]=user.nick_name #返回 return jsonify(errno=RET.OK, errmsg="用户注册成功")
def register_index(): """请求路径: /passport/register 请求方式: POST 请求参数: mobile, sms_code,password 返回值: errno, errmsg 1.获取参数 2.检验参数,为空效验 3.根据手机号取出redis中短信验证码 4.短信验证码正确性 5.检查密码是否符合要求 6.查看数据库中是否有该用户 7.把用户插入数据库中,完成注册 8.返回相应 """ request_dict = request.get_json() mobile = request_dict.get("mobile") sms_code = request_dict.get("sms_code") password = request_dict.get("password") if not all([mobile,sms_code,password]): return jsonify(errno=RET.NODATA,errmsg="参数不能为空") try: redis_sms_code = redis_store.get("sms_code:%s"%mobile) except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR,errmsg="数据库提取验证码失败!") if not redis_sms_code: return jsonify(errno=RET.NODATA,errmsg="验证码已过期!") if sms_code != redis_sms_code: return jsonify(errno=RET.DATAERR, errmsg="验证码不正确!") # if not re.match(r"(\d{6,13})|(\w{6,13})",password): # return jsonify(errno=RET.DATAERR,errmsg="密码过于简单!") try: user = models.User.query.filter(models.User.mobile==mobile).first() # print (user) except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR,errmsg="数据库查询数据错误!") if user: return jsonify(errno=RET.DATAEXIST,errmsg="账号已存在!") try: add_user = models.User() add_user.nick_name = mobile add_user.password = password add_user.mobile = mobile db.session.add(add_user) # db.session.commit() 设置了自动提交 return jsonify(errno=RET.OK,errmsg="账号注册成功!") except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR,errmsg="数据库查询数据错误!")
def create_superuser(username,password): user = models.User() user.nick_name = username user.mobile = username user.password = password user.is_admin = True try: db.session.add(user) db.session.commit() except Exception as e: curren_app.logger.error(e) return "创建失败!"
def createsuperuser(name, password): try: if models.User.query.filter_by(mobile=name).count() > 0: print('用户名已经存在') return except: print('数据库连接失败') return user = models.User() user.nick_name = name user.mobile = name user.password = password user.is_admin = True # 管理员 db.session.add(user) try: db.session.commit() print('管理员创建成功') except: print('连接数据库失败')
def createsuperuser(user_name, password): """ 创建管理员账户 :param user_name: 用户名 :param password: 密码 :return: """ if not all([user_name, password]): print('缺少参数:-n "用户名" -p "密码"') # 初始化用户对象 user = models.User() user.mobile = user_name user.nick_name = user_name user.password = password user.is_admin = True try: db.session.add(user) db.session.commit() print('创建管理员成功') except Exception as e: db.session.rollback() raise e