matraz de producción y el modo de desarrollo

He desarrollado una aplicación con matraz, y quiero publicarlo para la producción, pero no sé cómo hacer una separación entre la producción y el entorno de desarrollo (base de datos y código), tienen los documentos para que me ayude o código.
Puedo especificar en el config.py archivo de los dos medio ambiente, pero no sé cómo hacer con.

class DevelopmentConfig(Config):
    """
    Development configurations
    """
    DEBUG = True
    SQLALCHEMY_ECHO = True
    ASSETS_DEBUG = True
    DATABASE = 'teamprojet_db'
    print('THIS APP IS IN DEBUG MODE. YOU SHOULD NOT SEE THIS IN PRODUCTION.')


class ProductionConfig(Config):
    """
    Production configurations
    """
    DEBUG = False
    DATABASE = 'teamprojet_prod_db'

2 Kommentare

  1. 26

    Una convención utilizada es especificar una variable de entorno antes de iniciar su aplicación.

    Por ejemplo

    $ ENV=prod; python run.py

    En su aplicación, compruebe el valor de la variable de entorno para determinar qué configuración para su uso. En su caso:

    run.py

    import os
    if os.environ['ENV'] == 'prod':
        config = ProductionConfig()
    else:
        config = DevelopmentConfig()

    También vale la pena señalar que la declaración de

    print('THIS APP IS IN DEBUG MODE. YOU SHOULD NOT SEE THIS IN PRODUCTION.')

    impresiones no importa que ENV se establece desde el intérprete ejecuta todo el código en las definiciones de clase antes de ejecutar el resto de la secuencia de comandos.

    • Por supuesto que especificar el medio ambiente antes de la ejecución, pero lo que yo quiero es que cuando modifico en dev. medio ambiente no quiero que el prod toque, aunque he de reiniciar mi servidor (como si se trata de dos diferentes directorios).

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea