这可能是我需要使用has_many:through的情况,但我不想这样做,因为这是一个没有属性的简单连接表。
我的提供者表位于外部数据库中:
class Provider < ActiveRecord::Base
establish_connection :external_db
set_table_name :ch_cdn
set_primary_key :cdn_id
has_and_belongs_to_many :dashboards
end
Class Dashboard < ActiveRecord::Base
has_and_belongs_to_many :providers
end
但是当我尝试: Dashboard.first.providers&lt;&lt; Provider.first
我得到了
ActiveRecord :: StatementInvalid:Mysql2 :: Error:Table 'chshared.dashboards_providers'不存在:SELECT
ch_cdn
。* FROMch_cdn
内部加入dashboards_providers
ch_cdn
。cdn_id
=dashboards_providers
。provider_id
在哪里dashboards_providers
。dashboard_id
= 1
它正在查找连接表的错误数据库。是否可以指定“仪表板”提供程序位于另一个数据库中?
答案 0 :(得分:1)
这可能是一个错字,但看看“Class Dashboard”,应该是“class Dashboard”。此外,这是从11月开始的。所以我认为你已经解决了它。