Почему мой файл db / structure.sql содержит инструкцию CREATE SCHEMA после запуска db: structure: dump? - PullRequest
1 голос
/ 07 июня 2019

После переноса моей базы данных разработки я не могу запустить rails db:test:prepare.

Мое приложение использует файл db/structure.sql для обновления тестовой базы данных:

# config/application.rb

config.active_record.schema_format = :sql

Когда я запускаю rails db:migrate (который также запускается db:structure:dump), мой db/structure.sql обновляется. К сожалению, теперь после обновления она содержит строку вверху:

CREATE SCHEMA public;

Это будет бомба при загрузке в базу данных, которая уже содержит схему public.

Я могу вручную обновить эту строку, и дамп SQL успешно загружается:

CREATE SCHEMA IF NOT EXISTS public;

... но я не хочу делать это каждый раз.

Я ожидаю, что тестовая база данных будет успешно построена из дампа SQL в db/structure.sql при запуске rails db:test:prepare, поскольку дамп SQL не должен пытаться создать схему public.

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