config.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import os
  2. basedir = os.path.abspath(os.path.dirname(__file__))
  3. class Config:
  4. SECRET_KEY = os.environ.get('SECRET_KEY') or '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef'
  5. SSL_DISABLE = False
  6. SQLALCHEMY_RECORD_QUERIES = True
  7. SQLALCHEMY_COMMIT_ON_TEARDOWN = True
  8. # SQLALCHEMY_ECHO = True
  9. FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN')
  10. FLASKY_POSTS_PER_PAGE = 20
  11. FLASKY_COMMENTS_PER_PAGE = 30
  12. FLASKY_FOLLOWERS_PER_PAGE = 50
  13. FLASKY_SLOW_DB_QUERY_TIME = 0.5
  14. @staticmethod
  15. def init_app(app):
  16. pass
  17. class DevelopmentConfig(Config):
  18. DEBUG = True
  19. SQLALCHEMY_DATABASE_URI = os.environ.get('DEV_DATABASE_URL') or 'sqlite:///' + os.path.join(basedir, 'data-dev.sqlite')
  20. class TestingConfig(Config):
  21. TESTING = True
  22. SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or 'sqlite:///' + os.path.join(basedir, 'data-test.sqlite')
  23. class ProductionConfig(Config):
  24. SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL')
  25. @classmethod
  26. def init_app(cls, app):
  27. Config.init_app(app)
  28. config = {
  29. 'development': DevelopmentConfig,
  30. 'testing': TestingConfig,
  31. 'production': ProductionConfig,
  32. 'default': DevelopmentConfig
  33. }