示例#1
0
def create_app():
    # Create the Flask's instance.
    app = Flask(__name__,
                static_folder="../dist/static",
                template_folder="../dist")

    # Set the project's config.
    app.config.from_object(ProdConfig)

    # Register blueprint
    app.register_blueprint(user)
    app.register_blueprint(article)
    app.register_blueprint(catalog)

    # Init the extensions' app
    db.init_app(app)
    cors.init_app(app)
    jwt.init_app(app)
    # swagger.init_app(app)

    # Page jump
    @app.route('/', defaults={'path': ''})
    @app.route('/<path:path>')
    def catch_all(path):
        return render_template("index.html")

    return app
示例#2
0
def register_blueprints(app):
    origins = app.config.get("CORS_ORIGIN_WHITELIST")
    cors.init_app(gifs.blueprint, origins=origins, supports_credentials=True)
    cors.init_app(users.blueprint, origins=origins, supports_credentials=True)

    app.register_blueprint(gifs.blueprint)
    app.register_blueprint(users.blueprint)
示例#3
0
def create_app():
    # name is a pre-defined python variable which is set to the name of the module in which it is used
    # the flask object implements a WSGI application - once it is created it acts as a central repository
    # for view functions, url rules, template config, etc
    # should be created in main module or __init__.py of your package
    app = Flask(__name__)
    app.config['MONGODB_SETTINGS'] = {
        'db': 'kart_db',
        'host': '172.21.0.2',
        'port': 27017,
        'authentication_source': 'admin',
        'username': '******',
        'password': '******'
    }
    #print('cf: ' + str(dir(config_filename)))
    #app.config.from_object('settings')
    app.config.from_envvar('FLASK_MODULE_SETTINGS')
    #app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+mysqlconnector://root:[email protected]:3306/mange_takk_db'
    #app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

    # initialize extensions so that extension knows the name of the application object
    api.init_app(app)
    cors.init_app(app)
    # right now all cross origin requests are allowed - need to change this config
    # src: https://stackoverflow.com/questions/26980713/solve-cross-origin-resource-sharing-with-flask
    # cors = CORS(app, resources={r"/api/*": {"origins": "*"}})
    db.init_app(app)
    jwt.init_app(app)

    return app
示例#4
0
def configure_extensions(app):

    # cors
    cors.init_app(app,
                  origins=app.config['CORS_ORIGINS'],
                  methods=app.config['CORS_METHODS'],
                  allow_headers=app.config['CORS_ALLOW_HEADERS'])
示例#5
0
def register_extensions(app):
    db.init_app(app)

    blueprint = Blueprint('api', __name__, url_prefix='/api')
    api.init_app(blueprint)
    app.register_blueprint(blueprint)
    cors.init_app(app)
示例#6
0
def create_app():
    app = Flask(__name__)

    if app.config["ENV"] == "development":
        app.config.from_object("config.DevelopmentConfig")
    else:
        app.config.from_object("config.ProductionConfig")

    app.register_blueprint(json_return)
    app.register_blueprint(main_page)
    app.register_blueprint(account_page)
    app.register_blueprint(register_login_page)
    app.register_blueprint(general_page)
    app.register_blueprint(about_page)
    app.register_blueprint(experience_page)
    app.register_blueprint(education_page)
    app.register_blueprint(skills_page)
    app.register_blueprint(project_page)

    from extensions import db, login_manager, cors, migrate

    db.init_app(app)
    login_manager.init_app(app)
    cors.init_app(app)
    migrate.init_app(app, db)

    @login_manager.user_loader
    def load_user(user_id):
        return General.query.get(int(user_id))

    with app.app_context():
        db.create_all()

    return app
示例#7
0
def create_app(config=None):
    new_app = Flask(__name__,
                    template_folder='../react_app/build',
                    static_folder='../react_app/build/static')
    new_app.config.from_object(config)

    with new_app.app_context():
        jwt.init_app(new_app)
        bcrypt.init_app(new_app)
        cors.init_app(new_app)
        mysql.init_app(new_app)
        mail.init_app(new_app)

    from model import temp_blacklist

    @jwt.token_in_blacklist_loader
    def check_if_token_in_blacklist(decrypted_token):
        return decrypted_token['jti'] in temp_blacklist

    # Let react handle routing
    @new_app.route('/', defaults={'path': ''})
    @new_app.route('/<path:path>')
    def serve(path):
        if path and os.path.exists(safe_join(new_app.template_folder, path)):
            return send_from_directory(new_app.template_folder, path)
        else:
            return send_from_directory(new_app.template_folder, 'index.html')

    from resources.authentication import (UserRegistration, UserLogin,
                                          TokenRefresh, UnsetToken, AdminLogin,
                                          AdminRegister)
    from resources.user import GetUserInfo, UpdateUserInfo
    from resources.products import (TrackProduct, NewComments, GetComments,
                                    GetSpecificProduct)
    from resources.admin import Announcement

    api.add_resource(UserRegistration, '/register')
    api.add_resource(UserLogin, '/login')
    api.add_resource(TokenRefresh, '/refresh')
    api.add_resource(UnsetToken, '/revoke')
    api.add_resource(GetUserInfo, '/user')
    api.add_resource(UpdateUserInfo, '/user/<string:option>')
    api.add_resource(TrackProduct, '/product')
    api.add_resource(GetSpecificProduct,
                     '/product/<string:retailer>/<string:pid>')
    api.add_resource(NewComments, '/comment')
    api.add_resource(GetComments,
                     '/comment/<string:retailer>/<string:prod_id>')
    api.add_resource(AdminLogin, '/admin-login')
    api.add_resource(AdminRegister, '/admin-register')
    api.add_resource(Announcement, '/announcement')

    api_bp = Blueprint('api', __name__)
    api.init_app(api_bp)
    new_app.register_blueprint(api_bp, url_prefix='/api')
    return new_app
示例#8
0
def create_app(config_object=ProdConfig):
    app = Flask(__name__)
    app.config.from_object(config_object)

    app.register_blueprint(api_blueprint)

    cors.init_app(app)
    db.init_app(app)
    migrate.init_app(app, db)
    return app
示例#9
0
def extension(application: Flask) -> None:
    """
    Register 0 or more extensions (mutates the app passed in)
    Args:
        application: Flask application instance

    Returns: None

    """
    db.init_app(application)
    marsh.init_app(application)
    cors.init_app(application)
示例#10
0
def extensions(app):
    """
    Register 0 or more extensions (mutates the app passed in).

    :param app: Flask application instance
    :return: None
    """

    migrate.init_app(app, db)
    cors.init_app(app)
    bcrypt.init_app(app)
    api.init_app(app)
示例#11
0
def register_extensions(app):
    db.init_app(app)
    migrate.init_app(app, db)

    cors.init_app(app, supports_credentials=True)

    api.init_app(app, version='1.0', title='Swagger API',
                 description='API для сервиса интерактовной карты благоустройства г. Москва')

    api.add_namespace(ns_map)
    api.add_namespace(ns_data_set)
    api.add_namespace(ns_reports)
    api.add_namespace(ns_dictionary)
示例#12
0
def create_app(config_name='dev'):
    app = Flask(__name__)

    app.config.from_object(config_factory[config_name])
    db.init_app(app)
    api.init_app(app)
    cors.init_app(app)
    migrate.init_app(app, db)
    ma.init_app(app)

    router_register(app)

    return app
示例#13
0
文件: app.py 项目: appcypher/requests
def initialize_extensions(app):
    """
    Initializes flask extensions.

    Args:
        app (Flask): flask application.
    """
    # Initialize SQLAlchemy instance.
    db.init_app(app)

    # Allow cross-origin requests.
    cors.init_app(app)

    # Apply database migrations.
    migrate.init_app(app, db)
示例#14
0
def create_app(config=None):
    app = Flask('scaffold', instance_relative_config=True)
    if config is not None:
        app.config.from_object(config)

    init_logger(app)
    logger.info('starting %s' % app.name)
    db.init_app(app)
    cors.init_app(app)
    celery.config_from_object(app.config)
    login_manager.init_app(app)
    api.init_app(app)
    init_api(api, app)
    logger.info('started %s' % app.name)

    return app
示例#15
0
def register_extensions_production(app):
    """Register Flask extensions."""

    from extensions import api
    api.init_app(app)
    cors.init_app(app, supports_credentials=True)
    # need this for true prod
    cors.init_app(
        app, 
        resources={
            r"/*": {"origins": "https://www.icarusmed.com"}
        }, 
        supports_credentials=True)

    jwt.init_app(app)
    csrf.init_app(app)

    return None
示例#16
0
def create_app(name, config_name='development'):
    app = Flask(name)
    app.root_path = os.path.dirname(os.path.abspath(__file__))
    app.config.from_object(config[config_name])

    fd = open(config[config_name].cfg_file_name, 'r')
    cfg = json.loads(fd.read())
    app.config.from_mapping(cfg)

    config[config_name].init_app(app)
    init_logging(logger, cfg)
    mail.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    pagedown.init_app(app)
    cors.init_app(app)
    bootstrap.init_app(app)

    app.register_blueprint(auth_blueprint, url_prefix='/auth')
    app.register_blueprint(main_blueprint, url_prefix='')
    # attach routes and custom error pages here
    return app
示例#17
0
def create_app():
    app = Flask('DAM')
    app.register_blueprint(auth_bp, url_prefix='/auth')
    app.register_blueprint(user_bp, url_prefix='/user')
    app.register_blueprint(module_bp, url_prefix='/module')
    app.register_blueprint(data_dict_bp, url_prefix='/dd')
    app.register_blueprint(test_bp, url_prefix='/test')
    app.register_blueprint(quality_bp, url_prefix='/quality')
    app.register_blueprint(report_bp, url_prefix='/report')

    app.config['SQLALCHEMY_DATABASE_URI'] = global_vars.linkword_mysql
    app.secret_key = "ACMilan1899"

    cors.init_app(app, resources=r'/*', supports_credentials=True)

    login_manager.init_app(app)
    login_manager.login_view = 'auth.login'
    login_manager.login_message = 'Unauthorized User'
    login_manager.login_message_category = "info"

    db.init_app(app)
    return app
示例#18
0
def register_extensions_test(app):
    cors.init_app(app, supports_credentials=True)
    jwt.init_app(app)
    csrf.init_app(app)

    return None
示例#19
0
def register_extensions(app):
    """Register extensions."""
    cors.init_app(app, resources={r'/*': {'origins': '*'}})
    deep_detect_extension.init_app(app)
示例#20
0
from flask import Flask
import config
from extensions import db, cors, api

from auth.views import auth_bp
from network.views import network_bp

app = Flask(__name__)

app.config.from_object(config.Config)

# registers app
db.init_app(app)
cors.init_app(app)
api.init_app(app)

# registers blueprint
app.register_blueprint(auth_bp)
app.register_blueprint(network_bp)

if __name__ == "__main__":
    app.run(debug=True, port=4444)
示例#21
0
def register_extensions(app):
    init_db(app)
    bcrypt.init_app(app)
    cors.init_app(app)
示例#22
0
def register_extensions(app):
    cors.init_app(app)