Esempio n. 1
0
def create_app(config_class=Config):
    app = Flask(__name__)
    app.config.from_object(config_class)

    bootstrap.init_app(app)
    db.init_app(app)
    login.init_app(app)
    moment.init_app(app)
    admin.init_app(app)

    from app.main import bp as main_bp
    app.register_blueprint(main_bp)

    from app.auth import bp as auth_bp
    app.register_blueprint(auth_bp)

    from app.error import bp as error_bp
    app.register_blueprint(error_bp)

    from app.article import bp as article_bp
    app.register_blueprint(article_bp)

    from app.post import bp as post_bp
    app.register_blueprint(post_bp)

    return app
Esempio n. 2
0
def register_extensions(app):
    bcrypt.init_app(app)
    db.init_app(app)
    csrf_protect.init_app(app)
    login.init_app(app)
    debug_toolbar.init_app(app)
    mail.init_app(app)
    migrate.init_app(app, db)
    moment.init_app(app)
    if not app.debug and not app.testing:
        if app.config['MAIL_SERVER']:
            auth = None
            if app.config['MAIL_USERNAME'] or app.config['MAIL_PASSWORD']:
                auth = (app.config['MAIL_USERNAME'],
                        app.config['MAIL_PASSWORD'])
            secure = None
            if app.config['MAIL_USE_TLS']:
                secure = ()
            mail_handler = SMTPHandler(
                mailhost=(app.config['MAIL_SERVER'], app.config['MAIL_PORT']),
                fromaddr='no-reply@' + app.config['MAIL_SERVER'],
                toaddrs=app.config['ADMINS'], subject='Microblog Failure',
                credentials=auth, secure=secure)
            mail_handler.setLevel(logging.ERROR)
            app.logger.addHandler(mail_handler)
    return None
Esempio n. 3
0
def register_extensions(app):
    bcrypt.init_app(app)
    db.init_app(app)
    csrf_protect.init_app(app)
    login.init_app(app)
    migrate.init_app(app, db)
    moment.init_app(app)
    return None
Esempio n. 4
0
def configure_extensions(app):
    from app.extensions import db, login, migrate, mail, moment
    db.init_app(app)
    login.init_app(app)
    login.login_view = 'static_views.login'
    migrate.init_app(app, db)
    mail.init_app(app)
    moment.init_app(app)
Esempio n. 5
0
def register_plugin(app):
    db.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    mail.init_app(app)
    ckeditor.init_app(app)
    login_manager.init_app(app)
    csrf.init_app(app)
Esempio n. 6
0
def register_extensions(app):
    bootstrap.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    mail.init_app(app)
    login_manager.init_app(app)
    toolbar.init_app(app)
    cache.init_app(app)
    ckeditor.init_app(app)
Esempio n. 7
0
def register_extensions(app):
    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    page_down.init_app(app)
    debug_toolbar.init_app(app)
    migrate.init_app(app, db)
Esempio n. 8
0
def configure_extensions(app):
    # configure extensions
    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    login_manager.session_protection = 'strong'
    login_manager.login_view = 'auth.login'
    login_manager.login_message = u"Please log in to access this page. "
    login_manager.init_app(app)
Esempio n. 9
0
def register_extensions(app):
    """初始化拓展"""
    bootstrap.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    csrf.init_app(app)
    ckeditor.init_app(app)
    moment.init_app(app)
    avatars.init_app(app)
    whooshee.init_app(app)
Esempio n. 10
0
def register_extensions(app):
    bcrypt.init_app(app)
    db.init_app(app)
    csrf_protect.init_app(app)
    login.init_app(app)
    migrate.init_app(app, db)
    moment.init_app(app)
    configure_uploads(app, images)
    patch_request_class(app)
    return None
Esempio n. 11
0
def register_extensions(app):
    bootstrap.init_app(app)
    db.init_app(app)
    login.init_app(app)
    csrf.init_app(app)
    ckeditor.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    toolbar.init_app(app)
    migrate.init_app(app, db)
Esempio n. 12
0
def register_extentions(app):
    bootstrap.init_app(app)
    db.init_app(app)
    moment.init_app(app)
    mail.init_app(app)
    login_manager.init_app(app)
    dropzone.init_app(app)
    csrf.init_app(app)
    avatars.init_app(app)
    whooshee.init_app(app)
Esempio n. 13
0
def config_extensions(app):
    bootstrap.init_app(app)
    db.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    login_manage.init_app(app)
    login_manage.session_protection = 'strong'
    login_manage.login_view = 'user.login'
    login_manage.login_message = '请先登录'
    configure_uploads(app, photos)
    patch_request_class(app, size=None)
Esempio n. 14
0
def register_extensions(app):
    babel.init_app(app)
    bcrypt.init_app(app)
    bootstrap.init_app(app)
    cache.init_app(app)
    db.init_app(app)
    csrf_protect.init_app(app)
    login_manager.init_app(app)
    debug_toolbar.init_app(app)
    migrate.init_app(app, db)
    mail.init_app(app)
    moment.init_app(app)
Esempio n. 15
0
def register_extensions(app):

    debug_toolbar.init_app(app)
    db.init_app(app)
    migrate.init_app(app, db)
    login_manager.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    mail.init_app(app)
    api.init_app(app)
    jwt.init_app(app)
    limiter.init_app(app)
Esempio n. 16
0
def register_extensions(app):
    
    db.init_app(app)
    bootstrap.init_app(app)
    ckeditor.init_app(app)
    login_manager.init_app(app)
    csrf.init_app(app)
    pagedown.init_app(app)
    moment.init_app(app)
    migrate.init_app(app, db)
    sitemap.init_app(app)
    search.init_app(app)
Esempio n. 17
0
def config_extensions(app):
    db.init_app(app)
    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    login_manger.init_app(app)
    # 默认'basic',另外None禁用,'strong'用户信息改的立即退出登录
    login_manger.session_protection = 'strong'
    # 设置登录页面的端点(视图函数),访问选用登录才有权限的URL时自动跳转
    login_manger.login_view = 'user.login'
    # 需要登录时的提示信息,默认是英文字符串
    login_manger.login_message = '需要登录才可访问'
Esempio n. 18
0
def extensions(app):
    # initializes all currently used extensions in the application.
    bootstrap.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    mail.init_app(app)
    pagedown.init_app(app)
    #celery.conf.update(app.config)
    #debug_toolbar.init_app(app)

    return None
Esempio n. 19
0
def register_extensions(app):
    """Register Flask extensions."""
    bcrypt.init_app(app)
    cache.init_app(app)
    db.init_app(app)
    csrf_protect.init_app(app)
    login_manager.init_app(app)
    debug_toolbar.init_app(app)
    migrate.init_app(app, db)
    webpack.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    return None
Esempio n. 20
0
def register_extensions(app):
    """Register Flask extensions."""

    db.app = app
    db.init_app(app)
    migrate.init_app(app, db)
    mail.init_app(app)
    moment.init_app(app)

    from flask_security import SQLAlchemyUserDatastore
    from app.auth.models import User, Role
    user_datastore = SQLAlchemyUserDatastore(db, User, Role)
    security.init_app(app=app, datastore=user_datastore)
    return None
Esempio n. 21
0
def register_extensions(app):
    bootstrap.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    login_manager.login_view = 'web.login'
    login_manager.login_message_category = 'warning'
    avatars.init_app(app)
    pagedown.init_app(app)
    #cache.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    csrf.init_app(app)
    socketio.init_app(app)
    oauth.init_app(app)
Esempio n. 22
0
def register_extensions(app):
    # 添加数据库
    db.init_app(app)
    # 迁移数据库
    migrate.init_app(app, db)

    # 加载插件
    login_manager.init_app(app)
    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    babel.init_app(app)
    # 富文本插件
    ckeditor.init_app(app)
    csrf.init_app(app)
Esempio n. 23
0
def register_extensions(app):
    bootstrap.init_app(app)
    # db.init_app(app)
    login_manager.init_app(app)
    mail.init_app(app)
    moment.init_app(app)

    # toolbar.init_app(app)

    # task services

    # csrf.init_app(app)
    scheduler.init_app(app)

    db.init_app(app)
Esempio n. 24
0
def create_app(config_name):
    from flask import Flask
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)
    login_manager.init_app(app)
    mongo.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    create_admin(app)
    app.register_blueprint(auth.auth)
    app.register_blueprint(main.main)
    app.register_blueprint(post.post_main)
    app.register_blueprint(article.article_main)
    return app
Esempio n. 25
0
def create_app(config_name=None):
    if not config_name:
        config_name = os.environ.get("FLASK_ENV")
    app = Flask(__name__)
    app.config.from_pyfile("../configs/celery_config.py")
    app.config.from_object(config[config_name])
    mail.init_app(app)
    moment.init_app(app)
    login_manager.init_app(app)
    db.init_app(app)
    pagedown.init_app(app)
    bootstrap.init_app(app)
    app.redis = Redis.from_url(app.config["REDIS_URL"])
    # 提交任务的队列
    # app.task_queue = rq.Queue('hello_flask-tasks', connection=app.redis)
    update_celery(app, celery)

    app.elasticsearch = (Elasticsearch([app.config["ELASTICSEARCH_URL"]])
                         if app.config["ELASTICSEARCH_URL"] else None)

    from .main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    from .auth import auth as auth_blueprint
    app.register_blueprint(auth_blueprint, url_prefix="/auth")
    # # 配置log 在非debug情形下
    # if not app.debug:
    #     basedir = os.path.abspath(os.path.dirname(__file__))
    #     log_dir = os.path.join(basedir, 'logs')
    #     if not os.path.exists(log_dir):
    #         os.mkdir(log_dir)
    #     file_handler = RotatingFileHandler(
    #         os.path.join(log_dir, 'hello_flask.log'),
    #         maxBytes=10240, backupCount=10)
    #     file_handler.setFormatter(
    #         logging.Formatter('%(asctime)s %(levelname)s: %'
    #                           '(message)s[in %(pathname)s:%(lineno)d]'))
    #     file_handler.setLevel(logging.INFO)
    #     app.logger.addHandler(file_handler)
    #     app.logger.setLevel(logging.INFO)
    #     app.logger.info('hello_flask start up')
    from .api import api as api_blueprint
    app.register_blueprint(api_blueprint, url_prefix="/api")
    from .play import play as play_blueprint

    app.register_blueprint(play_blueprint, url_prefix="/play")
    app.app_context().push()
    return app
Esempio n. 26
0
def create_app():
    app = Flask(__name__)
    app.config.from_object(config)
    #set server-side session if redis is valid
    if utilRedis.isValid():
        app.session_interface = RedisSessionInterface(
            redis=utilRedis.redis_client)
    # csrf ajax
    CsrfProtect(app)

    db.init_app(app)
    babel.init_app(app)
    moment.init_app(app)
    cache.init_app(app)
    mail.init_app(app)

    return app
Esempio n. 27
0
def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])

    # Register our blueprints
    from .cast import cast as cast_blueprint
    from .auth import auth as auth_blueprint
    from .api_1_0 import api as api_blueprint
    from .api_1_1 import api_1_1 as api_blueprint_1_1
    from .admin import admin as admin_blueprint
    from .dj import dj as dj_blueprint

    app.register_blueprint(cast_blueprint)
    app.register_blueprint(auth_blueprint, url_prefix="/auth")
    app.register_blueprint(api_blueprint, url_prefix="/api")
    app.register_blueprint(api_blueprint_1_1, url_prefix="/api1.1")
    app.register_blueprint(admin_blueprint, url_prefix="/admin")
    app.register_blueprint(dj_blueprint, url_prefix="/dj")

    # Initialize any extensions we are using
    bootstrap.init_app(app)
    login_manager.init_app(app)
    moment.init_app(app)

    def nl2br(value):
        return value.replace("\n", "<br>\n")

    app.jinja_env.filters["nl2br"] = nl2br

    @app.route("/robots.txt")
    def robots_from_static():
        return send_from_directory(os.path.join(app.root_path, "static"), "robots.txt")

    @app.before_request
    def before_request():
        g.next_cast = Cast.query.order_by(Cast.cast_number.desc()).first()
        msgs = Announcement.query.all()
        if msgs:
            for msg in msgs:
                flash("%s" % msg.message, "%sannouncement" % msg.id)

    whooshalchemy.whoosh_index(app, Pick)
    return app
Esempio n. 28
0
def register_extensions(app):
    db.init_app(app)
    migrate.init_app(app, db)
    login.init_app(app)
    mail.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    babel.init_app(app)
    ckeditor.init_app(app)
    csrf.init_app(app)
    avatars.init_app(app)

    from app.api import bp as api_bp
    csrf.exempt(api_bp)

    app.elasticsearch = Elasticsearch([
        app.config['ELASTICSEARCH_URL']
    ]) if app.config['ELASTICSEARCH_URL'] else None
    app.redis = Redis.from_url(app.config['REDIS_URL'])
    app.task_queue = rq.Queue('microblog-tasks', connection=app.redis)
Esempio n. 29
0
def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    # pagedown.init_app(app)

    from .main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    from .auth import auth as auth_blueprint
    app.register_blueprint(auth_blueprint, url_prefix='/auth')

    register_template_context(app)
    register_shell_context(app)


    return app
Esempio n. 30
0
    static_folder="../static",
)

""" Bind config + security settings to app """
import app.core as app_core


""" Init + Bind extensions to app """
# Ordering is important.
admin.init_app(app_instance)
babel.init_app(app_instance)
bootstrap.init_app(app_instance)
db.init_app(app_instance)
serializer.init_app(app_instance)
mail.init_app(app_instance)
moment.init_app(app_instance)
health.init_app(app_instance, "/healthcheck")
register_app_cdn(app_instance)
assets.init_app(app_instance)   # Manage JavaScript bundles
templates.nav.init_app(app_instance)

# Inject db session into all models
BaseModel.set_session(db.session)

# Enable/Disable development extensions
if app_instance.debug:
    debugger.init_app(app_instance)

# Module imports
app_core.after_db_init()
import app.celery_tasks
Esempio n. 31
0
def register_extensions(app):
    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    ckeditor.init_app(app)
Esempio n. 32
0
def register_extensions(app):
    db.init_app(app)
    celery.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)