Skip to content
Snippets Groups Projects
Commit d2fc4758 authored by Jeremy M Fee's avatar Jeremy M Fee Committed by Claycomb, Abram Earl
Browse files

Move User class to login module

parent b767e3ed
No related branches found
No related tags found
No related merge requests found
from __future__ import unicode_literals
from builtins import str
import flask import flask
import flask_login
import flask_migrate import flask_migrate
import flask_sqlalchemy import flask_sqlalchemy
...@@ -15,20 +12,3 @@ def init_app(app: flask.Flask): ...@@ -15,20 +12,3 @@ def init_app(app: flask.Flask):
db.init_app(app) db.init_app(app)
migrate = flask_migrate.Migrate(app, db) migrate = flask_migrate.Migrate(app, db)
class User(db.Model, flask_login.UserMixin):
id = db.Column(db.Integer, primary_key=True)
openid = db.Column(db.Text, unique=True, nullable=False)
email = db.Column(db.Text, unique=True, nullable=False)
groups = db.Column(db.Text)
def get_id(self) -> str:
return str(self.openid)
def to_dict(self):
return {
'id': self.id,
'openid': self.openid,
'email': self.email,
'groups': self.groups
}
...@@ -6,7 +6,7 @@ import os ...@@ -6,7 +6,7 @@ import os
from authlib.integrations.flask_client import OAuth from authlib.integrations.flask_client import OAuth
from functools import wraps from functools import wraps
from .database import db, User from .database import db
# Blueprint for auth routes # Blueprint for auth routes
...@@ -39,6 +39,28 @@ def init_app(app: flask.Flask): ...@@ -39,6 +39,28 @@ def init_app(app: flask.Flask):
app.register_blueprint(blueprint) app.register_blueprint(blueprint)
class User(db.Model, flask_login.UserMixin):
"""User database model.
"""
__tablename__ = 'user'
id = db.Column(db.Integer, primary_key=True)
openid = db.Column(db.Text, unique=True, nullable=False)
email = db.Column(db.Text, unique=True, nullable=False)
is_active = db.Column(db.Boolean, default=False)
groups = db.Column(db.Text)
def get_id(self) -> str:
return str(self.openid)
def to_dict(self):
return {
'id': self.id,
'openid': self.openid,
'email': self.email,
'groups': self.groups
}
@login_manager.user_loader @login_manager.user_loader
def _load_user(user_id): def _load_user(user_id):
return User.query.filter_by(openid=user_id).first() return User.query.filter_by(openid=user_id).first()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment