首页 > 代码库 > Flask 学习 十六 部署
Flask 学习 十六 部署
部署流程
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 学习 十六 部署
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。