import os basedir = os.path.abspath(os.path.dirname(__file__)) class Config: SECRET_KEY = os.environ.get('SECRET_KEY') or '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef' SSL_DISABLE = False SQLALCHEMY_RECORD_QUERIES = True SQLALCHEMY_COMMIT_ON_TEARDOWN = True # SQLALCHEMY_ECHO = True FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN') FLASKY_POSTS_PER_PAGE = 20 FLASKY_COMMENTS_PER_PAGE = 30 FLASKY_FOLLOWERS_PER_PAGE = 50 FLASKY_SLOW_DB_QUERY_TIME = 0.5 @staticmethod def init_app(app): pass class DevelopmentConfig(Config): DEBUG = True # 数据库 SQLALCHEMY_DATABASE_URI = os.environ.get('DEV_DATABASE_URL') or 'sqlite:///' + os.path.join(basedir, 'data-dev.sqlite') # redis缓存 REDIS_URL = os.environ.get('DEV_REDIS_URL') or "redis://:test@localhost:51002/0" # 定时任务 SCHEDULER_API_ENABLED = True class TestingConfig(Config): TESTING = True SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or 'sqlite:///' + os.path.join(basedir, 'data-test.sqlite') class ProductionConfig(Config): # 数据库 SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') # redis缓存 REDIS_URL = os.environ.get('REDIS_URL') # 定时任务 SCHEDULER_API_ENABLED = True @classmethod def init_app(cls, app): Config.init_app(app) config = { 'development': DevelopmentConfig, 'testing': TestingConfig, 'production': ProductionConfig, 'default': DevelopmentConfig }