Я младший разработчик RoR. У меня есть эта архитектура:
- 2 базы данных на разных хостах
- 1 приложение с несколькими базами данных, установленными на database.yml
в моей первой базе данных, которую я храню Vacancies
во второй базе данных, которую я храню Users
VacancyController
def create
@vacancy = Vacancy.new(vacancy_params)
ActiveRecord::Base.connected_to(database: { writing: :secondary }) do
@vacancy.save
end
end
Как вы можете видеть, я храню с помощью функции rails 6 activeRecord в моей вторичной базе данных.
Модель Vacancy.rb имеет следующее отношение: own_to: пользователь
Модель User.rb имеет следующее отношение: has_many: зависимости вакансий:: delete_all
Таким образом, первый БД не имеет таблицы вакансий и второй БД не имеет таблицы пользователей.
У меня появляется эта ошибка, когда я пытаюсь создать Vacancy
:
Mysql2::Error: Table 'secondary.users' doesn't exist
Я думаю, что это происходит, потому что первый БД не имеет таблицы вакансий и второй дБ не имеет таблицы пользователей. Также я не могу создавать таблицы миссий для каждого БД. Как я могу это решить?
Спасибо