Flask: переключение базы данных MySQL при тестировании - PullRequest
0 голосов
/ 08 апреля 2019

Я немного новичок в Flask и мне нужен совет.Я настраивал колбу в Google, используя базу данных MySQL, и у меня есть каталог для тестирования.Приложение колбы можно настроить так, чтобы оно находилось в режиме тестирования:

create_app(test_config={
        'TESTING': True
    }

Я хотел, чтобы мое приложение по умолчанию использовало базу данных «Live», но когда я установил «ТЕСТИРОВАНИЕ»«Правда, я хотел бы использовать базу данных« Тест ».Главное место, где я подключаюсь к базе данных, находится в чертеже, однако я не смог найти прямую ссылку на приложение колбы через Blueprint или определить, нахожусь ли я в режиме тестирования из Blueprint.

Этоэто то, о чем я думал, однако, поскольку я незнаком с Flask, я обеспокоен тем, что, вероятно, есть лучший способ сделать это.

i) Напишите две функции, одну для подключения к действующей базе данных иодин для подключения к тестовой базе данных.
ii) В основном пакете, где создается приложение Flask и обрабатывается файл конфигурации, я думал о присоединении connect_live или connect_test к приложению Flask, используя нечто похожее на:

if myApp.testing:
   myApp.get_db=connect_test
else
   myApp.get_db=connect_live

iii) В чертежах попытайтесь подключиться к базе данных, используя что-то вроде:

current_app.get_db()

Есть ли другой способ выяснить, находится ли я в среде тестирования из Blueprint?или есть лучший способ сделать это?

Спасибо

...