Advertisement
Guest User

Untitled

a guest
Aug 30th, 2016
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. @app.before_request
  2. def before_request():
  3. g.user = current_user
  4.  
  5. user = User.query.filter_by(email=form.email.data,password=form.password.data).first()
  6.  
  7. from app import db,unicode,UserMixin
  8.  
  9. ROLE_USER = 0
  10. ROLE_ADMIN = 1
  11.  
  12. class User(UserMixin,db.Model):
  13. id = db.Column(db.Integer, primary_key = True)
  14. username = db.Column(db.String(64), index = True, unique = True)
  15. email = db.Column(db.String(120), index = True, unique = True)
  16. password = db.Column(db.String(120), index = True)
  17. role = db.Column(db.SmallInteger, default=ROLE_USER)
  18.  
  19. def __init__(self, id, username, email, password, role):
  20. self.id = id
  21. self.username = username
  22. self.email = email
  23. self.password = password
  24. self.role = role
  25.  
  26. def get_id(self):
  27. return self.id
  28.  
  29. def is_authenticated(self):
  30. return True
  31.  
  32. def is_active(self):
  33. return True
  34.  
  35. def is_anonymous(self):
  36. return False
  37.  
  38. def __repr__(self):
  39. return 'ID: %r ' % (self.id) + ' USERNAME: %r ' % (self.username) + ' EMAIL: %r ' % (self.email) + ' PASSWORD: %r ' % (self.password) + ' ROLE: %r ' % (self.role)
  40.  
  41. @lm.user_loader
  42. def load_user(id):
  43. return User.query.get(id)
  44.  
  45. @app.route('/login', methods=('GET', 'POST'))
  46. def login():
  47. if g.user is not None and g.user.is_authenticated:
  48. return redirect(url_for('index', title=g.user.username))
  49. form = LoginForm()
  50. if form.validate_on_submit():
  51. user = User.query.filter_by(email=form.email.data,password=form.password.data).first()
  52. print('USER :' + str(user))
  53. print('G.USER :' + str(g.user))
  54. print('USER LOGIN IS : ' + str(login_user(user)))
  55. login_user(user)
  56. return redirect(url_for('index'))
  57. return render_template('login.html', form=form)
  58.  
  59. class LoginForm(Form):
  60. email = StringField('Email', validators=[DataRequired()])
  61. password = PasswordField('New Password', validators=[DataRequired()])
  62. remember_me = BooleanField('Remember me', default=False)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement