本文整理汇总了Python中flask.ext.login.login_user方法的典型用法代码示例。如果您正苦于以下问题:Python login.login_user方法的具体用法?Python login.login_user怎么用?Python login.login_user使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类flask.ext.login
的用法示例。
在下文中一共展示了login.login_user方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: login_
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def login_():
form = flask.request.form
username = escape_lib.safe_entity_name(form.get('username'))
password = form.get('password')
if username and password:
user = grade_oven_lib.GradeOvenUser.load_and_authenticate_user(
data_store, username, password)
if user is None:
monitor_variables['login_failures'] += 1
return flask.abort(401)
else:
monitor_variables['login_successes'] += 1
login.login_user(user, remember=True)
redirect = flask.request.args.get('redirect', '/')
return flask.redirect(redirect, code=303)
return flask.render_template(
'login.html', username=login.current_user.get_id())
示例2: login
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def login():
"""login as our user.
input: LoginRequest (if POST)
output: ok.
Request:
?email=xx&password=xx[&remember_me=1] (if GET, else arguments in LoginRequest)
"""
if request.method == "POST":
input_pb = protobuf_json.json2pb(all_pbs.LoginRequest(), request.get_json())
else:
input_pb = all_pbs.LoginRequest()
input_pb.email = request.args.get("email", "")
input_pb.password = request.args.get("password", "")
input_pb.remember = request.args.get("remember", "") == "1"
table = data_models.GetTable(data_models.RW_USERS)
user_pb = data_models.ToProto(table.find_one({"info.email": input_pb.email}), data_models.RW_USERS)
if not user_pb or user_pb.info.password != input_pb.password:
abort(400)
user = user_util.FLUser(user_pb)
flogin.login_user(user, remember=input_pb.remember)
session.permanent = True
return 'ok'
示例3: register_post
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def register_post():
try:
if request.form["password"] != request.form["password2"]:
flash("Your password and password verification didn't match.",
"danger")
return redirect(url_for("register_get"))
if len(request.form["password"]) < 8:
flash("Your password needs to be at least 8 characters", "danger")
return redirect(url_for("register_get"))
user = User(name=request.form["username"],
password=generate_password_hash(request.form["password"]),
email=request.form["email"])
session.add(user)
allusers = session.query(User).all()
for users in allusers:
session.add(user.follow(users))
session.add(users.follow(user))
session.commit()
flash("User successfully registered", "success")
login_user(user)
return redirect(request.args.get("next") or url_for("entries"))
except IntegrityError:
flash("The username or email was already taken." +
" Maybe you need to reset your password (below)?", "danger")
session.rollback()
return redirect(url_for("register_get"))
示例4: pwreset_post
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def pwreset_post(id):
if request.form["password"] != request.form["password2"]:
flash("Your password and password verification didn't match.", "danger")
return redirect(url_for("pwreset_get", id = id))
if len(request.form["password"]) < 8:
flash("Your password needs to be at least 8 characters", "danger")
return redirect(url_for("pwreset_get", id = id))
user_reset = session.query(PWReset).filter_by(reset_key=id).one()
#session.query(User).filter_by(id=user_reset.user.id).one()
#gi(user_reset.user_id, "PRINTING ID")
try:
session.query(User).filter_by(id = user_reset.user_id).update({'password': generate_password_hash(request.form["password"])})
session.commit()
except IntegrityError:
flash("Something went wrong", "danger")
session.rollback()
return redirect(url_for("entries"))
user_reset.has_activated = True
session.commit()
flash("Your new password is saved.", "success")
#login_user(user)
return redirect(url_for("entries"))
示例5: signin_user_db
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def signin_user_db(user_db):
if not user_db:
return flask.redirect(flask.url_for('signin'))
flask_user_db = FlaskUser(user_db)
auth_params = flask.session.get('auth-params', {
'next': flask.url_for('welcome'),
'remember': False,
})
flask.session.pop('auth-params', None)
if login.login_user(flask_user_db, remember=auth_params['remember']):
user_db.put_async()
return flask.redirect(util.get_next_url(auth_params['next']))
flask.flash('Sorry, but you could not sign in.', category='danger')
return flask.redirect(flask.url_for('signin'))
示例6: register
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def register():
if request.method == 'POST':
email = request.form['email']
pw = request.form['pw']
hash = sha256_crypt.encrypt(pw)
user = User(email, hash)
db.session.add(user)
db.session.commit()
flask_login.login_user(user)
return redirect(url_for('index'))
elif request.method == 'GET':
return render_template('register.html')
示例7: login
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def login():
if request.method == 'POST':
email = request.form['email']
pw = request.form['pw']
user = User.query.filter_by(email=email).first()
if user is not None:
if sha256_crypt.verify(pw, user.hash):
# flask_login.login_user(user) #call is not working
flask_login.current_user = user
flask_login.remember_me = True
return redirect(url_for('index'))
return redirect(url_for('login'))
elif request.method == 'GET':
return render_template('login.html')
示例8: register
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def register():
"""Creates an account + the user in the database + auto login.
input: RegistrationRequest
output: "ok".
"""
registration_req_pb = data_models.DictToProto(all_pbs.RegistrationRequest(), request.get_json())
user_info_pb = registration_req_pb.user_info
if not user_info_pb.email or \
not registration_req_pb.stripe_token or \
user_util.doesEmailExist(user_info_pb.email):
abort(400)
user_pb = all_pbs.User()
user_pb.info.MergeFrom(user_info_pb)
user_pb.id = data_models.GetUniqueId()
customer = stripe.Customer.create(
card=registration_req_pb.stripe_token,
description='%s %s - %d' % (user_info_pb.first_name, user_info_pb.last_name, user_pb.id),
email=user_info_pb.email,
metadata={"user_id": user_pb.id},
)
if not customer:
abort(400)
timestamp_secs = utils.getTimestampSecs()
user_pb.timestamp_creation_secs = timestamp_secs
user_pb.stripe_customer_id = customer.id
data_models.SaveProto(user_pb, data_models.RW_USERS)
flogin.logout_user()
user = user_util.FLUser(user_pb)
flogin.login_user(user, remember=False)
return 'ok'
示例9: debug_login
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def debug_login():
"""Auto login with no password.
?user_id=2
"""
if app.config[Constants.KEY_MODE] == Constants.PROD:
abort(401)
table = data_models.GetTable(data_models.RW_USERS)
user_pb = data_models.ToProto(table.find_one({"_id": int(request.args.get('user_id'))}), data_models.RW_USERS)
if not user_pb:
return "error"
user = user_util.FLUser(user_pb)
flogin.login_user(user, remember=True)
return 'ok'
示例10: loginPage
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def loginPage():
if flask.request.method == 'GET':
return render_template('login.html')
email = flask.request.form['email']
if flask.request.form['pw'] == users[email]['pw']:
user = User()
user.id = email
if flask.request.form.get('remember'):
user.remember = True
flask_login.login_user(user)
return flask.redirect('/dashboard')
return 'Bad login'
示例11: login_post
# 需要导入模块: from flask.ext import login [as 别名]
# 或者: from flask.ext.login import login_user [as 别名]
def login_post():
email = request.form["email"]
password = request.form["password"]
user = session.query(User).filter_by(email=email).first()
if not user or not check_password_hash(user.password, password):
flash("Incorrect username or password", "danger")
return redirect(url_for("login_get"))
login_user(user, remember=True)
flash("Logged in successfully", "success")
return redirect(request.args.get('next') or url_for("add_entry_get"))