You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.4 KiB

  1. import os
  2. basedir = os.path.abspath(os.path.dirname(__file__))
  3. class Config:
  4. SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string'
  5. MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.strato.de')
  6. MAIL_PORT = int(os.environ.get('MAIL_PORT', '587'))
  7. MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
  8. ['true', 'on', '1']
  9. MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
  10. MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
  11. FLASKY_MAIL_SUBJECT_PREFIX = '[Flasky]'
  12. FLASKY_MAIL_SENDER = 'Flasky Admin <flasky@example.com>'
  13. FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN')
  14. SQLALCHEMY_TRACK_MODIFICATIONS = False
  15. FLASKY_POSTS_PER_PAGE = 20
  16. @staticmethod
  17. def init_app(app):
  18. pass
  19. class DevelopmentConfig(Config):
  20. DEBUG = True
  21. SQLALCHEMY_DATABASE_URI = os.environ.get('DEV_DATABASE_URL') or \
  22. 'sqlite:///' + os.path.join(basedir, 'data-dev.sqlite')
  23. class TestingConfig(Config):
  24. TESTING = True
  25. SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or \
  26. 'sqlite://'
  27. class ProductionConfig(Config):
  28. SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
  29. 'sqlite:///' + os.path.join(basedir, 'data.sqlite')
  30. config = {
  31. 'development': DevelopmentConfig,
  32. 'testing': TestingConfig,
  33. 'production': ProductionConfig,
  34. 'default': DevelopmentConfig
  35. }