feature: 初始化 jwt 插件
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from flask import Flask
|
||||
|
||||
from configs import config
|
||||
from pear_admin.apis import register_apis
|
||||
from pear_admin.extensions import register_extensions
|
||||
from pear_admin.orms import UserORM
|
||||
from pear_admin.views import register_views
|
||||
@@ -12,6 +13,7 @@ def create_app(config_name="dev"):
|
||||
app.config.from_object(config[config_name])
|
||||
|
||||
register_extensions(app)
|
||||
register_apis(app)
|
||||
|
||||
register_views(app)
|
||||
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
from flask import Flask
|
||||
|
||||
from .init_db import db, migrate
|
||||
from .init_jwt import jwt
|
||||
from .init_script import register_script
|
||||
|
||||
|
||||
def register_extensions(app: Flask):
|
||||
db.init_app(app)
|
||||
migrate.init_app(app, db)
|
||||
jwt.init_app(app)
|
||||
|
||||
register_script(app)
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
from flask_jwt_extended import JWTManager
|
||||
|
||||
from pear_admin.orms.user import UserORM
|
||||
|
||||
jwt = JWTManager()
|
||||
|
||||
|
||||
@jwt.user_identity_loader
|
||||
def user_identity_lookup(user):
|
||||
return user.id
|
||||
|
||||
|
||||
@jwt.user_lookup_loader
|
||||
def user_lookup_callback(_jwt_header, jwt_data):
|
||||
identity = jwt_data["sub"]
|
||||
return UserORM.query.filter_by(id=identity).one_or_none()
|
||||
Reference in New Issue
Block a user