config.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. # -*- encoding: utf-8 -*-
  2. """
  3. Copyright (c) 2019 - present AppSeed.us
  4. """
  5. import os
  6. class Config(object):
  7. basedir = os.path.abspath(os.path.dirname(__file__))
  8. # Set up the App SECRET_KEY
  9. # SECRET_KEY = config('SECRET_KEY' , default='S#perS3crEt_007')
  10. SECRET_KEY = os.getenv('SECRET_KEY', 'S#perS3crEt_007')
  11. # This will create a file in <app> FOLDER
  12. SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'db.sqlite3')
  13. SQLALCHEMY_TRACK_MODIFICATIONS = False
  14. class ProductionConfig(Config):
  15. DEBUG = False
  16. # Security
  17. SESSION_COOKIE_HTTPONLY = True
  18. REMEMBER_COOKIE_HTTPONLY = True
  19. REMEMBER_COOKIE_DURATION = 3600
  20. # PostgreSQL database
  21. SQLALCHEMY_DATABASE_URI = '{}://{}:{}@{}:{}/{}'.format(
  22. os.getenv('DB_ENGINE' , 'mysql'),
  23. os.getenv('DB_USERNAME' , 'appseed_db_usr'),
  24. os.getenv('DB_PASS' , 'pass'),
  25. os.getenv('DB_HOST' , 'localhost'),
  26. os.getenv('DB_PORT' , 3306),
  27. os.getenv('DB_NAME' , 'appseed_db')
  28. )
  29. class DebugConfig(Config):
  30. DEBUG = True
  31. # Load all possible configurations
  32. config_dict = {
  33. 'Production': ProductionConfig,
  34. 'Debug' : DebugConfig
  35. }