示例#1
0
def create_app():
    app = Flask(__name__)
    app.config.from_object('settings')

    # Creating the mail object to manage emails in flask
    mail.init_app(app)

    # initializing the database lazily
    db.init_app(app)

    # initializing gravatars
    gravatar = Gravatar(app,
                    size=100,
                    rating='g',
                    default='retro',
                    force_default=False,
                    force_lower=False,
                    use_ssl=False,
                    base_url=None)

    # registering the different modules in the application
    app.register_blueprint(blogs_blueprint,url_prefix='/blogs')
    app.register_blueprint(main_blueprint,url_prefix='/')
    app.register_blueprint(resources_blueprint,url_prefix='/resources')
    app.register_blueprint(users_blueprint,url_prefix='/users')

    # initializing the login manager lazily
    login_manager.init_app(app)

    return app
def create_app():
    app.config['SQLALCHEMY_DATABASE_URI'] = database_uri
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    app.config.SWAGGER_UI_JSONEDITOR = True
    app.config.update(mail_settings)

    db.init_app(app)
    mail.init_app(app)

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

    blueprint = Blueprint('api', __name__, url_prefix='/doc')
    api.init_app(blueprint)
    api.add_namespace(books_ns)
    api.add_namespace(borrowers_ns)
    api.add_namespace(loans_ns)
    api.add_namespace(lists_ns)
    app.register_blueprint(blueprint)

    @app.route('/')
    def hello_world():
        return 'Hello Rasengan'

    # init BackgroundScheduler job
    scheduler = BackgroundScheduler()
    scheduler.add_job(reminder_job, trigger='interval', days=1)
    scheduler.start()

    try:
        return app
    except:
        scheduler.shutdown()
示例#3
0
def create_app(config_file='config/config.json'):
    app = Flask(__name__)

    config = json.load(open(config_file))

    get_req_config(app, config, 'DEBUG')
    app.debug = app.config['DEBUG']

    get_req_config(app, config, 'SECRET_KEY')
    get_req_config(app, config, 'MONGO_URI')
    get_req_config(app, config, 'MONGO_DB_NAME')
    get_req_config(app, config, 'TESTING')
    get_req_config(app, config, 'BASE_URL')

    get_opt_config(app, config, 'MAIL_SERVER')
    get_opt_config(app, config, 'MAIL_PORT')
    get_opt_config(app, config, 'MAIL_USERNAME')
    get_opt_config(app, config, 'MAIL_PASSWORD')

    # Supress mail sending if not specified, i.e. in dev
    if ('MAIL_SERVER' not in config):
        app.config['MAIL_SUPPRESS_SEND'] = True

    # Configurations that are always the same
    app.config['JWT_TOKEN_LOCATION'] = ['cookies', 'headers']
    app.config['JWT_REFRESH_COOKIE_PATH'] = '/api/auth/session'
    app.config['JWT_COOKIE_CSRF_PROTECT '] = False
    app.config['JWT_CSRF_IN_COOKIES'] = False
    app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024

    # Pass configurations to extensions
    jwt = JWTManager(app)
    db.init_app(app)
    mail.init_app(app)

    # Add endpoints from these files
    # Note order is important here
    from auth import auth_api
    from accounts import accounts_api
    from admin import admin_api
    from resumes import resume_api
    from registrations import registrations_api
    from assign import assign_api

    app.register_blueprint(auth_api, url_prefix='/api/auth')
    app.register_blueprint(admin_api, url_prefix='/api/admin')
    app.register_blueprint(accounts_api, url_prefix='/api/accounts')
    app.register_blueprint(resume_api, url_prefix='/api/resumes')
    app.register_blueprint(registrations_api, url_prefix='/api/registrations')
    app.register_blueprint(assign_api, url_prefix='/api/judgetool')

    return app
示例#4
0
def eve_init():
    # eve-docs
    Bootstrap(app)
    app.register_blueprint(eve_docs, url_prefix='/docs')

    # tools
    app.register_blueprint(bp_tools, url_prefix='/tools')

    # mail
    mail.init_app(app)

    # jobs
    setup_jobs(app)

    # hooks
    setup_hooks(app)

    # Initialize db
    db_init(app)
示例#5
0
def create_app():
    app = Flask(__name__)

    # Load config
    if app.config["ENV"] == "production":
        app.config.from_object("config.ProductionConfig")
    elif app.config["ENV"] == "testing":
        app.config.from_object("config.TestingConfig")
    else:
        app.config.from_object("config.DevelopmentConfig")

    # Initialize logs
    logging.config.dictConfig(
        yaml.load(open(app.config["LOG_CONFIG_FILE"]), Loader=yaml.FullLoader))
    init_access_logger(app)

    # Register blueprints
    app.register_blueprint(api_blueprint, url_prefix='/api')

    # Initialize jwt
    setup_jwt(app)

    # Initialize database
    db.init_app(app)

    # Initialize migrations
    Migrate(app, db)

    # Seed database data
    seeder = DatabaseSeeder()
    seeder.init_app(app)

    # Initialize metrics
    try:
        metrics.init_app(app)
    except ValueError:
        log.info('Metrics already initialized')

    # Initialize mail
    mail.init_app(app)

    return app
示例#6
0
def create_app(config_filename):

    app = Flask(__name__)
    app.config.from_object(config_filename)

    CORS(app, resources={
         r"/*": {"origins":
                 ['http://127.0.0.1:8080', 'http://localhost:8080']}})

    from api import api
    api.init_app(app)

    from model import db
    db.init_app(app)

    # from jwt_ext import jwt
    jwt = JWTManager()
    jwt.init_app(app)

    from mail import mail
    mail.init_app(app)

    return app
示例#7
0
from flask import Flask, Blueprint
from flask_restful import reqparse, abort, Api, Resource
from flask_cors import CORS
from db import db
from mail import mail
from models.asignatura import Asignatura
import json

app = Flask(__name__)
app.config.from_pyfile('config.cfg')
api_bp = Blueprint('api', __name__)
CORS(api_bp)
mail.init_app(app)
api = Api(api_bp)
app.register_blueprint(api_bp)


def init_modules(app, api):
    from resources import curso
    from resources import alumno
    from resources import login
    from resources import estadistica
    from resources import colegio
    from resources import apoderado
    from resources import observacion
    from resources import profesor
    from resources import asignatura
    from resources import asistencia
    from resources import administrador
    from resources import justificacion
    from resources import anotacion
示例#8
0
文件: app.py 项目: ArtAPI/artFlask
def configure_extensions(app):
    mongo.init_app(app)
    mail.init_app(app)
示例#9
0
api_user=manager.create_api_blueprint(
    User,methods=['GET'],
    collection_name='user',
    include_columns=['accepted','confirmed','id','userid','email','previous','level','gender','year_birthday','experiments']
)
app.register_blueprint(api_user,url_prefix='/api')
api_experimentuser=manager.create_api_blueprint(
    ExperimentUser,methods=['GET'],
    collection_name='eu'
)
app.register_blueprint(api_experimentuser,url_prefix='/api')

Triangle(app)

app.config.from_pyfile('golempoll.cfg')
mail.init_app(app)

login_manager = LoginManager()
login_manager.init_app(app)

# Setting the database
@app.teardown_appcontext
def shutdown_session(exception=None):
    db_session.remove()

# Managin login
@login_manager.user_loader
def load_user(userid):
    try:
        user=User.query.filter(User.userid==userid).one()
    except :