import os basedir = os.path.abspath(os.path.dirname(__file__)) class Config: SECRET_KEY = os.environ.get('SECRET_KEY') or 'dev-secret-key-change-in-production' SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \ 'sqlite:///' + os.path.join(basedir, 'instance', 'directlx.db') SQLALCHEMY_TRACK_MODIFICATIONS = False class DevelopmentConfig(Config): DEBUG = True class ProductionConfig(Config): DEBUG = False @property def SECRET_KEY(self): key = os.environ.get('SECRET_KEY') if not key: raise ValueError('SECRET_KEY environment variable must be set in production') return key config = { 'development': DevelopmentConfig, 'production': ProductionConfig, 'default': DevelopmentConfig }