Приложение Flask не работает в конфигурации разработки - PullRequest
0 голосов
/ 27 октября 2018

я запускаю приложение фляги, приложение работает, но не следит за конфигурациями, которые я установил. Это файл конфигурации

import os

class Config(object):
    "parent configuration class"
    DEBUG= True



class DevelopmentConfig(Config):
    "Configurations for Development"
    DEBUG = True
    connectionVariables="dbname='store-manager' user='postgres' password="1235" host='localhost' port='5432'"
    os.environ['ENVIRONMENT']='development'

class TestingConfig(Config):
    """Configurations for Testing,"""
    TESTING = True
    DEBUG = True
    connectionVariables="dbname='store-manager-test' user='postgres' password="1235" host='localhost' port='5432'"
    os.environ['ENVIRONMENT']='testing'


app_config = {
    'development': DevelopmentConfig,
    'testing': TestingConfig
}

Всякий раз, когда я запускаю приложение, оно запускается в режиме тестирования, даже когда яуказали разработку, однако, если я удаляю конфигурацию тестирования, она запускается в среде разработки.Вот как я создаю приложение

from flask import Flask
from flask_restful import Api

from instance.config import app_config
from connection import DbBase



def create_app(config_name):
    app = Flask(__name__)

    app.config.from_object(app_config[config_name])


    return app

Вот так я его запускаю.

import os
from app import create_app

config_name = 'development'

app = create_app(config_name)
# method to run app.py
if __name__ == '__main__':


    app.run()

1 Ответ

0 голосов
/ 27 октября 2018

В зависимости от того, как вы на самом деле его выполняете и на какой платформе, вы должны обязательно указать расположение файла config.file.

export YOURAPPLICATION_SETTINGS=/path/to/settings.cfg

или для windows

set YOURAPPLICATION_SETTINGS=\path\to\settings.cfg

Я не вижу его в приведенном выше описании, так что это может быть проблемой.

Flask Doc при использовании файла конфигурации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...