62 lines
1.8 KiB
Python
62 lines
1.8 KiB
Python
from flask import Flask, render_template
|
|
from flask_jwt_extended import JWTManager
|
|
|
|
from kontor import config
|
|
from kontor.extensions import db, ma
|
|
from logging.config import dictConfig
|
|
|
|
dictConfig({
|
|
'version': 1,
|
|
'formatters': {'default': {
|
|
'format': '[%(asctime)s] %(levelname)s in %(module)s: %(message)s',
|
|
}},
|
|
'handlers': {'wsgi': {
|
|
'class': 'logging.StreamHandler',
|
|
'stream': 'ext://flask.logging.wsgi_errors_stream',
|
|
'formatter': 'default'
|
|
}},
|
|
'root': {
|
|
'level': 'INFO',
|
|
'handlers': ['wsgi']
|
|
}
|
|
})
|
|
|
|
app = Flask(__name__)
|
|
|
|
|
|
def create_app(config_class=config.Config):
|
|
app.config.from_object(config_class)
|
|
|
|
db.init_app(app)
|
|
ma.init_app(app)
|
|
# Initialize Flask extensions here
|
|
app.config["JWT_SECRET_KEY"] = "super-secret" # Change this!
|
|
jwt = JWTManager(app)
|
|
|
|
with app.app_context():
|
|
# db.create_all()
|
|
db.reflect()
|
|
|
|
# Register blueprints here
|
|
from kontor.main import bp as main_bp
|
|
app.register_blueprint(main_bp)
|
|
from kontor.comics import comics_bp
|
|
app.register_blueprint(comics_bp, url_prefix='/comics')
|
|
from kontor.api import api_bp
|
|
app.register_blueprint(api_bp, url_prefix='/api/v1')
|
|
from kontor.comics import comics_api
|
|
app.register_blueprint(comics_api, url_prefix='/api/v1/comics')
|
|
|
|
from kontor.media import media_bp
|
|
app.register_blueprint(media_bp, url_prefix='/media')
|
|
from kontor.media import media_api
|
|
app.register_blueprint(media_api, url_prefix='/api/v1/media')
|
|
# from kontor.auth.auth import auth_bp
|
|
# from kontor.cart.cart import cart_bp
|
|
# from kontor.general.general import general_bp
|
|
# app.register_blueprint(auth_bp)
|
|
# app.register_blueprint(cart_bp, url_prefix='/cart')
|
|
# app.register_blueprint(general_bp)
|
|
|
|
return app
|