text: #!/usr/bin/env python
  import os
  
  basedir = os.path.abspath(os.path.dirname(__file__))
  
  
  class Config:
  
      SECRET_KEY = os.environ.get('SECRET_KEY') or 'you should change this'
      UPLOAD_FOLDER = os.path.join(basedir, 'uploads')
      
      SQLALCHEMY_COMMIT_ON_TEARDOWN = True
      SQLALCHEMY_TRACK_MODIFICATIONS = False
      
  
      @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')
  
  
  class TestingConfig(Config):
      TESTING = True
      WTF_CSRF_ENABLED = False
      SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or \
                                'sqlite:///' + os.path.join(basedir, 'data-test.sqlite')
  
  
  # noinspection PyMethodOverriding
  class ProductionConfig(Config):
      SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
                                'sqlite:///' + os.path.join(basedir, 'data.sqlite')
      @classmethod
      def init_app(cls, app):
          Config.init_app(app)
  
  
  # Map class to environment
  config = {
      'development': DevelopmentConfig,
      'testing': TestingConfig,
      'production': ProductionConfig,
      'default': DevelopmentConfig
      }
  