Update login.py
This commit is contained in:
parent
1d0418d9eb
commit
a6567c0ecb
62
login.py
62
login.py
@ -1,40 +1,34 @@
|
||||
from flask import Flask
|
||||
from flask import Flask, flash, redirect, render_template, request, session, abort
|
||||
import os
|
||||
from sqlalchemy.orm import sessionmaker
|
||||
from tabledef import *
|
||||
engine = create_engine('sqlite:///tutorial.db', echo=True)
|
||||
<link rel="stylesheet" href="/static/style.css" type="text/css">
|
||||
{% block body %}
|
||||
{% if session['logged_in'] %}
|
||||
<p>You're logged in already!</p>
|
||||
{% else %}
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
@app.route('/')
|
||||
def home():
|
||||
if not session.get('logged_in'):
|
||||
return render_template('login.html')
|
||||
else:
|
||||
return "Hello Boss! <a href='/logout'>Logout</a>"
|
||||
<form action="/login" method="POST">
|
||||
<div class="login">
|
||||
<div class="login-screen">
|
||||
<div class="app-title">
|
||||
<h1>Login</h1>
|
||||
</div>
|
||||
|
||||
@app.route('/login', methods=['POST'])
|
||||
def do_admin_login():
|
||||
<div class="login-form">
|
||||
<div class="control-group">
|
||||
<input type="text" class="login-field" value="" placeholder="username" name="username">
|
||||
<label class="login-field-icon fui-user" for="login-name"></label>
|
||||
</div>
|
||||
|
||||
POST_USERNAME = str(request.form['username'])
|
||||
POST_PASSWORD = str(request.form['password'])
|
||||
<div class="control-group">
|
||||
<input type="password" class="login-field" value="" placeholder="password" name="password">
|
||||
<label class="login-field-icon fui-lock" for="login-pass"></label>
|
||||
</div>
|
||||
|
||||
Session = sessionmaker(bind=engine)
|
||||
s = Session()
|
||||
query = s.query(User).filter(User.username.in_([POST_USERNAME]), User.password.in_([POST_PASSWORD]) )
|
||||
result = query.first()
|
||||
if result:
|
||||
session['logged_in'] = True
|
||||
else:
|
||||
flash('wrong password!')
|
||||
return home()
|
||||
<input type="submit" value="Log in" class="btn btn-primary btn-large btn-block" >
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@app.route("/logout")
|
||||
def logout():
|
||||
session['logged_in'] = False
|
||||
return home()
|
||||
|
||||
if __name__ == "__main__":
|
||||
app.secret_key = os.urandom(12)
|
||||
app.run(debug=True,host='0.0.0.0', port=4000)
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
Loading…
Reference in New Issue
Block a user