Колбе не удалось загрузить конфигурацию из config.py - PullRequest
0 голосов
/ 20 февраля 2019

My __ init __. Py file

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from config import app_config


db = SQLAlchemy()

def create_app(config_name):
    app = Flask(__name__, instance_relative_config=True)
    app.config.from_object(app_config[config_name])
    app.config.from_pyfile('config.py')

    db.init_app(app)

    @app.route('/')
    def index():
        return 'Hello, user'

    return app

Я найду учебник для flask build crud app flask

My config.py file:

import os

# Set path for our db
basedir = os.path.dirname(os.path.abspath(__file__))


class Config:
    DEBUG = True


class DevConfig(Config):
    DEBUG = True
    SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir,
                                                          'bookshell.db')
    SQLALCHEMY_ECHO = True
    SQLALCHEMY_TRACK_MODIFICATIONS = False


class ProdConfig(Config):
    DEBUG = False


class TestConfig(Config):
    DEBUG = True


app_config = {
    'development': DevConfig,
    'production': ProdConfig,
    'testing': TestConfig
}

run.py file

import os

# Import from app/__init__
from app import create_app


config_name = os.getenv('FLASK_CONFIG', 'development')
app = create_app(config_name)

if __name__ == '__main__':
    app.run()

Итак, я попытался настроить свой собственный файл config.py, но яполучаю ошибку

FileNotFoundError: [Errno 2] Unable to load configuration file (No such file or directory): '/Users/yevhensurzhenko/Desktop/Simple_login_form/instance/config.py'

Но когда я изменяю какую-то конфигурацию и пытаюсь перезагрузить страницу, это дает мне 405 метод ошибки не допускается или

app.config.from_object(app_config[config_name])
KeyError: <flask.cli.ScriptInfo object at 0x1038a5b70>

ТакЯ внес некоторые изменения, например

В config.py add

app_config = {
    ..
    'default': DevConfig
} 

В __ init __. Py create instance dir.

from instance import config

И теперь я получаю вывод из func, который я создаю в __ init__.py, в create__app () ...

@app.route('/')
def index():
    return 'Hello, user'

Но FLASK_CONFIG нетизменить, работает только производство, wtf: (

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