def post(self): self.set_header("Content-Type", "application/json") try: email = str(self.get_argument("email")) password = str(self.get_argument("password")) password2 = str(self.get_argument("password2")) except: self.write(json.dumps("邮箱、密码、确认密码均为必填项!")) return if password != password2: self.write(json.dumps("两次输入的密码不一致!")) return has_user = User.get_user_by_email(email) if not has_user: try: # TODO baitao.ji 改造为发送验证邮件后才插入数据库中的用户表 User.create_user("无名氏", email, password) self.write(json.dumps("OK")) except: self.write(json.dumps("保存用户时数据库超时,请稍后重试!")) else: self.write(json.dumps("已存在该邮箱, 请尝试其他邮箱或用该邮箱登录!")) return
def post(self): self.set_header('Content-Type', 'application/json') rspd = {'status': 201, 'msg': 'OK'} try: tf = {'true': 1, 'false': 0} email = self.get_argument("email", '') name = self.get_argument("username", '') pw = random_string(16) status = tf[self.get_argument("status", 'true')] except: rspd['status'] = 500 rspd['msg'] = '错误: 注意必填项' self.write(json.dumps(rspd)) return try: userid = User.create_user(name, email, pw, status) if userid: sendEmail(u"新用户注册通知 - " + SITE_TITLE, u"您的密码是:" + pw + u"<br />请及时登录并修改密码!", email) rspd['status'] = 200 rspd['msg'] = '创建用户成功,已邮件通知该用户!' rspd['userid'] = userid rspd['method'] = "/admin/edit_user" clear_cache_by_pathlist(['/', 'user:%s' % str(userid)]) else: rspd['status'] = 500 rspd['msg'] = '错误: 通知邮件发送失败,请稍后重试' except OperationalError: rspd['status'] = 500 rspd['msg'] = '错误: 该 Email 地址已被占用,请尝试重新提交' except: rspd['status'] = 500 rspd['msg'] = '错误: 未知错误,请尝试重新提交' self.write(json.dumps(rspd)) return