def register_extensions(app): """Register Flask extensions.""" bcrypt.init_app(app) cache.init_app(app) db.init_app(app) migrate.init_app(app, db) jwt.init_app(app)
def create_app(env_name): app = Flask(__name__) app.config.from_object(app_config[env_name]) api = Api(app) bcrypt.init_app(app) db.init_app(app) jwt.init_app(app) cors.init_app(app) app.errorhandler(InvalidUsage)(error_handler) api.add_resource(UserRegister, '/register') api.add_resource(UserLogin, '/login') api.add_resource(UserMe, '/me') api.add_resource(UserResource, '/@<string:username>') api.add_resource(PostsByUserResource, '/@<string:username>/posts') api.add_resource(FavoritePostsByUserResource, '/@<string:username>/favorites') api.add_resource(TagResource, '/tags') api.add_resource(PostsResource, '/posts') api.add_resource(PostResource, '/posts/<int:post_id>') api.add_resource(FavoriteResource, '/posts/<int:post_id>/favorite') api.add_resource(CommentsResource, '/posts/<int:post_id>/comments') api.add_resource(CommentResource, '/posts/<int:post_id>/comments/<int:comment_id>') @app.route('/', methods=['GET']) def index(): return 'Welcome' return app
def create_app(config_class=DevelopmentConfig): app = Flask(__name__) app.config.from_object(config_class) load_dotenv() jwt.init_app(app) # CORS(app) api = Api(app) db.init_app(app) app.cli.add_command(create_tables) # To interact with app from CLI b_crypt.init_app(app) ma.init_app(app) migrate = Migrate(app, db) # oauth.init_app(app) # USER API api.add_resource(UserRegister, '/user/register') api.add_resource(UserLogin, '/user/login') api.add_resource(UserLogout, '/user/logout') api.add_resource(UserPasswordRestoreRequest, '/user/restore') api.add_resource(UserPasswordReSetter, '/user/restore/<string:token>') api.add_resource(User, '/user/<int:_id>') api.add_resource(UserList, '/users/<int:limit>') api.add_resource(TokenRefresher, '/user/refreshing') api.add_resource(UserEmail2FA, '/user/fa2_auth/<string:token>') # REQUEST API api.add_resource(RequestsList, '/requests') api.add_resource(RequestCreation, '/requests/new') print(f"App current configuration: {config_class.CONFIG_NAME}") # OAuth API # api.add_resource(GithubLogin, "/login/oauth/github") # api.add_resource(GithubAuthorize, "/login/oauth/github/authorized") # CONFIRMATION API api.add_resource(Confirmation, '/user/confirmation/<string:confirmation_id>') # api.add_resource(User, '/users/<int:user_id>') api.add_resource(Content, '/content') @app.route('/') def home(): return render_template("index.html") # Logging log_level = logging.INFO if app.config['DEBUG'] else logging.ERROR handler = WatchedFileHandler('server.log') formatter = logging.Formatter('%(asctime)s | %(levelname)s: %(message)s', '%d-%m-%Y %H:%M:%S') handler.setFormatter(formatter) root = logging.getLogger() root.setLevel(log_level) root.addHandler(handler) logging.info('\n------------------- Starting Server -------------------') return app
def register_extensions(app): """Register Flask extensions.""" origins = app.config.get('CORS_ORIGIN_WHITELIST', '*') cors.init_app(app, resources={r"/api/*": {"origins": origins}}) bcrypt.init_app(app) cache.init_app(app) db.init_app(app) migrate.init_app(app, db) jwt.init_app(app) docs.init_app(app) api.init_app(app)
def create_app(): app = Flask(__name__) app.config.from_object(Config) api.init_app(app) jwt.init_app(app) db.init_app(app) @app.before_first_request def create_tables(): db.create_all() return app
def register_extensions(app, config_object): """Init extension. You can see list extension in the extensions.py Args: app: Flask handler application config_object: settings of the application """ # Order matters: Initialize SQLAlchemy before Marshmallow # create log folder db.app = app db.init_app(app) ma.init_app(app)
def register_extensions(app): from src.extensions import db from src.extensions import migrate from src.extensions import socketio from src.extensions import limiter db.init_app(app) migrate.init_app(app, db) socketio.init_app(app, cors_allowed_origins='*', ping_timeout=1000, ping_interval=50) limiter.init_app(app)
def apply_extensions(app): """ Mutate the flask application with extensions :param app: flask instance :return: None """ # SQL Alchemy db.init_app(app) # Marshmallow marshmallow.init_app(app) return None
def create_app(config_name): app = Flask(__name__, static_folder="static") app.config.from_object(config[config_name]) config[config_name].init_app(app) db.init_app(app) route_app(app) import src.orm_models app.cli.add_command(src.orm_models.init_db_command) #Fix mimetype issue mimetypes.add_type('text/javascript', '.js') return app
def create_app(): app = Flask(__name__) app.secret_key = 'ChangeMe!' app.config['JWT_BLACKLIST_ENABLED'] = True app.config['JWT_BLACKLIST_TOKEN_CHECKS'] = ['access', 'refresh'] app.config['SQLALCHEMY_DATABASE_URI'] = "sqlite://" app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False db.init_app(app) jwt.init_app(app) # In a real application, these would likely be blueprints register_endpoints(app) return app
def create_app(config_class='configurations.py'): app = Flask(__name__) app.config.from_object(ProductionConfig) load_dotenv() jwt.init_app(app) api = Api(app) db.init_app(app) app.cli.add_command(create_tables) # To interact with app from CLI b_crypt.init_app(app) ma.init_app(app) migrate = Migrate(app, db) oauth.init_app(app) # USER API api.add_resource(UserRegister, '/users/register') api.add_resource(UserLogin, '/users/login') api.add_resource(UserLogout, '/users/logout') api.add_resource(User, '/user/<int:_id>') api.add_resource(UserList, '/users/<int:limit>') api.add_resource(TokenRefresher, '/users/refreshing') api.add_resource(UserEmail2FA, '/users/fa2_auth/<string:token>') # OAuth API api.add_resource(GithubLogin, "/login/oauth/github") api.add_resource(GithubAuthorize, "/login/oauth/github/authorized") # CONFIRMATION API api.add_resource(Confirmation, '/user_id/<string:confirmation_id>') # resources.add_resource(User, '/users/<int:user_id>') api.add_resource(CreatePost, '/posts/create') api.add_resource(Content, '/content') # Logging log_level = logging.INFO if app.config['DEBUG'] else logging.ERROR handler = WatchedFileHandler('server.log') formatter = logging.Formatter('%(asctime)s | %(levelname)s: %(message)s', '%d-%m-%Y %H:%M:%S') handler.setFormatter(formatter) root = logging.getLogger() root.setLevel(log_level) root.addHandler(handler) logging.info('\n------------------- Starting Server -------------------') return app
def setUp(self): db.init_app(self.app) db.create_all()
def register_extensions(app): """Flask extensions.""" bcrypt.init_app(app) db.init_app(app) migrate.init_app(app, db) admin.init_app(app)
#!/usr/bin/env python # -*- coding: utf-8 -*- from flask_migrate import Migrate, MigrateCommand from flask_script import Manager from src.extensions import db from src.app import create_app from src.config.config import Config from src.models import * app = create_app(Config) db.init_app(app) migrate = Migrate(app, db) manager = Manager(app) manager.add_command('db', MigrateCommand) if __name__ == '__main__': manager.run()
def register_extensions(app): db.init_app(app) ma.init_app(app)
def configure_extensions(app): """ 配置扩展 :param app: app实例 :return: """ # Flask-SQLAlchemy db.init_app(app) # Flask-Mail mail.init_app(app) # Flask-Redis redis_store.init_app(app) # Flask-Cache cache.init_app(app) # Flask-Limiter limiter.init_app(app) # Flask-Cors if app.config.get('ALLOW_GLOBAL_CORS'): cors.init_app(app) # Flask-Session session.init_app(app) # # Flask-Login # login_manager.login_view = app.config["LOGIN_VIEW"] # login_manager.refresh_view = app.config["REAUTH_VIEW"] # login_manager.login_message_category = app.config["LOGIN_MESSAGE_CATEGORY"] # login_manager.needs_refresh_message_category = \ # app.config["REFRESH_MESSAGE_CATEGORY"] # login_manager.anonymous_user = Guest @login_manager.user_loader def load_user(user_id): """ 从数据库加载用户信息 :param user_id: :return: """ from src.models.user import User user_instance = User.query.filter_by(id=user_id).first() if user_instance: g.user = user_instance return user_instance else: g.user = None return None login_manager.init_app(app) # Flask-Allows allows.init_app(app) # Flask-RESTful api.init_app(app) # Flask-Debugtoolbar # toolbar.init_app(app) # Flask-Babel babel.init_app(app) # Flask-Gzip gzip.init_app(app)
def register_extensions(app): db.init_app(app) api.init_app(app, add_specs=app.config['SPECS']) ma.init_app(app)
def register_extensions(app): db.init_app(app) migrate.init_app(app, db) ma.init_app(app)