Недавно я добавил PostgreSQL в свое приложение, которое уже работало на MySQL, теперь приложение работает на двух базах данных.Я был в состоянии установить ассоциации между таблицами, присутствующими в другой базе данных, и она работает нормально.Сегодня я добавил функцию поиска на странице, которая использует таблицы, присутствующие в двух базах данных, и выдает ошибку.Потратил целый день, пытаясь выяснить ошибку, но не удалось.Пожалуйста, посмотрите на ассоциации, код и помогите мне исправить это.
У меня есть 4 таблицы: -
Компания (mysql)
Местоположение (mysql)
Отчет (PostgreSQL)
Отчет_категория (PostgreSQL)
модель - company.rb
establish_connection Rails.env+"_postgres"
has_many :reports
establish_connection Rails.env
belongs_to :location
location.rb
has_many :companies
report.rb
establish_connection Rails.env
belongs_to :company
establish_connection Rails.env+"_postgres"
belongs_to :report_category
report_category.rb
establish_connection Rails.env+"_postgres"
has_many :report
Теперь из поля зрения я передаю параметры поиска, а в свой контроллер reports_ пишу
@reports = Report.where("companies.name like ? and report_category.name ?", params[:company], params[:category]).includes(:company, :report_category)
после выполнения этой строки i 'Получив приведенную ниже ошибку
ActiveRecord::StatementInvalid: PGError: ERROR: relation "companies" does not exist
, но
Company.where("location.name like ?", params[:location]).includes(:location)
или
Report.where("report_categories.name like ?", params[:category]).includes(:report_category)
работает отлично.Я получаю только ошибку, если я ищу с использованием двух баз данных.Пожалуйста, помогите