__init__.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:oniongate-web 作者: DonnchaC 项目源码 文件源码
def create_app(object_name):
    """
    An flask application factory

    object_name: the python path of the config object,
                 e.g. oniongate.settings.ProdConfig
    """

    app = Flask(__name__, instance_relative_config=True)
    app.config.from_object(object_name)
    try:
        app.config.from_pyfile("config.py")
    except FileNotFoundError:
        pass

    # Create zone file directory if it doesn't exist
    zone_directory = app.config.get('zone_dir') or os.path.join(app.instance_path, 'zones')
    if not os.path.isdir(zone_directory):
        os.makedirs(zone_directory)
    app.config["zone_dir"] = zone_directory

    api_bp = Blueprint('api', __name__)
    api = Api(api_bp)
    CORS(app, resources={r"/api/*": {"origins": "*"}})

    db.init_app(app)

    # register our blueprints
    app.register_blueprint(main_bp)
    app.register_blueprint(api_bp, url_prefix='/api/v1')

    api.add_resource(Domains, '/domains', '/domains/<domain_name>')
    api.add_resource(Records, '/records/<domain_name>', '/records/<domain_name>/<record_id>')
    api.add_resource(Proxies, '/proxies', '/proxies/<ip_address>')

    app.jinja_env.filters['naturaltime'] = humanize.naturaltime

    return app
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号