首页 > 其他 > 详细

Flask 学习 十六 部署

时间:2017-06-10 16:21:55      阅读:256      评论:0      收藏:0      [点我收藏+]

部署流程

manage.py 部署命令 每次安装升级只需运行deploy命令即可完成操作

@manager.command
def deploy():
    """执行部署任务"""
    from flask_migrate import upgrade
    from app.models import Role, User
    # 把数据库迁移到最新修订版本
    upgrade()
    # 创建用户角色
    Role.insert_roles()
    # 让所有用户都关注此用户
    User.add_self_follows()

 把生产环境中的错误写入日志

config.py 程序出错时发送电子邮件

class ProductionConfig(Config):
    SQLALCHEMY_DATABASE_URI = os.environ.get(DATABASE_URL) or sqlite:/// + os.path.join(basedir,data.sqlite)

    @classmethod
    def init_app(cls,app):
        Config.init_app(app)

        # 把错误通过电子邮件发送给管理员
        import logging
        from logging.handlers import SMTPHandler
        credentials = None
        secure = None
        if getattr(cls,MAIL_USERNAME,None) is not None:
            credentials = (cls.MAIL_USERNAME,cls.MAIL_PASSWORD)
            if getattr(cls,MAIL_USE_TLS,None):
                secure=()
        mail_handler = SMTPHandler(
            mailhost=(cls.MAIL_SERVER,cls.MAIL_PORT),
            fromaddr=cls.FLASKY_MAIL_SENDER,
            toaddrs=[cls.FLASKY_ADMIN],
            subject=cls.FLASKY_MAIL_SUBJECT_PREFIX+Application Error,
            credentials=credentials,
            secure=secure
        )
        mail_handler.setLevel(logging.ERROR)
        app.logger.addHandler(mail_handler)

 

Flask 学习 十六 部署

原文:http://www.cnblogs.com/Erick-L/p/6978703.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!