def post(self, argument): if argument == '1': data_json = json.loads(self.get_argument('data')) code = data_json.get('code') if self.session['email_random'] == code: # 新增到User表 user_data = { "UserName": self.session['nickname'], "UserEmail": self.session['bind_email'], "UserLastVisitIP": self.request.remote_ip } user_obj = Users(**user_data) session.add(user_obj) session.commit() # 添加到映射表 data = { "OpenID": self.session['openid'], "UserID": str(user_obj.UserID) } session.add(LoginMap(**data)) self.session.set('index_user', user_obj) session.commit() session.close() print "user_data", user_data # self.session['index_user'] = user_data self.write_json("验证成功", code=1) else: self.write_json("验证失败", code=0)
def auth_register(): username = request.form.get('username') email = request.form.get('email') password = request.form.get('password') user_username = Users.query.filter_by(username=username).first() user_email = Users.query.filter_by(email=email).first() if user_username or user_email: flash("Username/email already exists", "info") return redirect(url_for('auth.signup')) elif (len(username) or len(email)) < 5 or (len(password)) < 6: flash("Username/email/password min 6 Characters", "info") return redirect(url_for('auth.signup')) user = Users() user.username = username user.email = email user.password = bcrypt.generate_password_hash(password).decode("utf-8") db.session.add(user) db.session.commit() languages = Languages.query.all() for lang in languages: user_watchlist = Watchlist() user_watchlist.user_id = user.id user_watchlist.language_id = lang.id db.session.add(user_watchlist) db.session.commit() flash("Successfuly registered! Please Log in", "info") return redirect(url_for('users.profile', id=user.id))
def post(self): # 注册 try: # 获取前端传来的参数 data = json.loads(self.get_argument('data')) luosimao_rep = data.get('luosimao_rep') check_json = { 'api_key': settings.LUOSIMAO_API_KEY, 'response': luosimao_rep } check_response = requests.post(settings.LUOSIMAO_CHECK_ADDRESS, data=check_json) if json.loads(check_response.content).get('res') != 'success': code = 3 msg = u"人机验证失败" self.write_json(msg, code=code) return data.pop('luosimao_rep') data['UserAge'] = int(data['UserAge']) data['UserPwd'] = sec_pass(data['UserPwd']) data['UserLastVisitIP'] = self.request.remote_ip active_hash_code = sec_pass(str(int(time.time()))) data['UserHashCode'] = active_hash_code session.add(Users(**data)) session.commit() active_url = '<a href='+'http://'+settings.WEB_DOMAIN_NAME+\ '/active_email/?address='+data['UserEmail']+\ '&hash_code='+active_hash_code+'>http://'+settings.WEB_DOMAIN_NAME+\ '/active_email/?address='+data['UserEmail']+\ '&hash_code='+active_hash_code+'</a>' content = ''' <html> <body> <p>亲爱的用户:</p> <pre> 您收到这封邮件,是由于在 春色撩人网站 进行了新用户注册,或用户修改 Email 使用 了这个邮箱地址。 如果您并没有访问过 春色撩人网站,或没有进行上述操作,请忽 略这封邮件。您不需要退订或进行其他进一步的操作。 </pre> <pre> ===============激活链接=================== ''' + active_url + ''' (如果上面不是链接形式,请将该地址手工粘贴到浏览器地址栏再访问) </pre> </body> </html> ''' obj = redis_queue_send_email.REDIS_QUEUE() obj.send_email_via_queue(settings.SMTP_USER, data['UserEmail'], settings.WEB_NAME + "注册", content) self.write_json("success", code=1) except Exception, e: # 事务 session.rollback() self.write_json("failed", code=0)
def create(request: User, db: Session = Depends(get_db)): request.password = Hash.bcrypt(request.password) new_user = Users(**request.dict()) print(new_user) db.add(new_user) db.commit() db.refresh(new_user) return new_user
def handle_users(): if request.method == "POST": data = request.get_json() try: newUser = Users(**data) changed_fields = list(data.keys()) newUser.save(signal_kwargs={"changed_fields": changed_fields}) token = newUser.generate_auth_token() return jsonify({ "user:"******"token": token }) except Exception as e: return jsonify({"error": str(e)})
def post(self): # 新增用户 try: # 获取前端传来的参数 data = json.loads(self.get_argument('data')) # 保存访问IP data['UserLastVisitIP'] = self.request.remote_ip # 密码加密 data['UserPwd'] = sec_pass(data['UserPwd']) session.add(Users(**data)) session.commit() self.write_json("success", code=1) except: # 事务 session.rollback() self.write_json("failed", code=0) finally: session.close()
def user_update(id): first_name = request.form.get('first_name') last_name = request.form.get('last_name') username = request.form.get('username') email = request.form.get('email') password = request.form.get('password') phone = request.form.get('phone') my_user = Users() my_user.username = username my_user.email = email my_user.password = bcrypt.generate_password_hash(password).decode("utf-8") my_user.first_name = first_name my_user.last_name = last_name my_user.phone = phone db.session.add(user) db.session.commit() return render_template('user_show.html', id=my_user.id)
from models.User import Users import bcrypt # try: # mike_user = Users(mail="*****@*****.**", password="******", name="PHN_myname") # mike_user.save() # # mike_user = Users.find_user_by_credentials("*****@*****.**", "newThing23d") # print(mike_user.to_json()) # except Exception as e: # print("Should work 2", e) try: Users.objects(mail="*****@*****.**").delete() mike_user = Users(mail="*****@*****.**", password="******", name="PHN_mongonengine") print(mike_user.to_json()) # import pdb; pdb.set_trace() # print(Users.objects(id=mike_user.id)) mike_user.save(signal_kwargs={"changed_fields": ["password"]}) print("user Created") except Exception as e: print("Should have Created user", str(e)) try: mike_user = Users.find_user_by_credentials("*****@*****.**", "newThing23d") mike_user.remove_all_auth_token() print(mike_user.to_json()) mike_user.generate_auth_token()
def seed_db(): from models.User import Users from models.Language import Languages from models.Watchlist import Watchlist faker = Faker() users = [] languages = [] watchlists = [] colours = [ 'Red', 'White', 'Yellow', 'Green', 'Gold', 'Silver', 'Purple', 'Teal' ] list_FNames = [ 'Adam', 'Eve', 'Jada', 'Ryan', 'Alex', 'Myra', 'Amar', 'Jason', 'Frankie' ] list_LNames = [ 'Gold', 'Silver', 'Richardson', 'Teller', 'Rickers', 'Sarr', 'Farah', 'Reed', 'Port' ] list_languages = [{ "python": { "2020-09-27": 2270.5, "2020-09-28": 2271.0, "2020-09-29": 2315.0, "2020-09-30": 2282.5, "2020-10-01": 2345.0, "2020-10-02": 2323.5, "2021-03-14": 3352.0 }, "javascript": { "2020-09-27": 1907.0, "2020-09-28": 1896.0, "2020-09-29": 1947.5, "2020-09-30": 1918.0, "2020-10-01": 1969.0, "2020-10-02": 1942.0, "2021-03-14": 2867.5 }, "html": { "2020-09-27": 1134.0, "2020-09-28": 1152.5, "2020-09-29": 1202.0, "2020-09-30": 1172.5, "2020-10-01": 1209.5, "2020-10-02": 1196.0, "2021-03-14": 1730.5 }, "css": { "2020-09-27": 899.5, "2020-09-28": 906.0, "2020-09-29": 928.5, "2020-09-30": 923.0, "2020-10-01": 952.0, "2020-10-02": 947.0, "2021-03-14": 1260.5 }, "java": { "2020-09-27": 2356.0, "2020-09-28": 2346.0, "2020-09-29": 2393.5, "2020-09-30": 2365.0, "2020-10-01": 2434.0, "2020-10-02": 2400.5, "2021-03-14": 3465.5 }, "swift": { "2020-09-27": 212.0, "2020-09-28": 218.5, "2020-09-29": 213.5, "2020-09-30": 213.5, "2020-10-01": 215.5, "2020-10-02": 211.5, "2021-03-14": 357.5 } }] for i in range(9): user = Users() user.first_name = random.choice(list_FNames) user.last_name = random.choice(list_LNames) user.username = f"{user.first_name}{i}" user.email = f"{user.first_name}{i}@test.com" user.password = bcrypt.generate_password_hash(f"password{i}").decode( "utf-8") user.phone = f"043226447{i}" db.session.add(user) users.append(user) db.session.commit() for lang in list_languages: for i in lang: language = Languages() language.name = i language.details = lang[i] db.session.add(language) languages.append(language) db.session.commit() for person in users: for lang in languages: user_watchlist = Watchlist() user_watchlist.user_id = person.id user_watchlist.language_id = lang.id db.session.add(user_watchlist) db.session.commit() print("Tables seeded")