在我的应用程序中,我需要查询外部数据库数据库中的表,该数据库链接到我的默认数据库 多对多的关系。 我的中间表位于我的默认数据库中。 p>
为了做到这一点,我修改了我的database.yml以包含外部数据库。 然后我在schema.yml中添加了中间表(message_news_rel,位于我的默认数据库中)和来自外部源(新闻)的表。 p>
以下是我如何指定关系: p>
MessageNews:
connection:uda_iPoste
tableName:message_news_rel
columns:
message_id:
type:integer(10)
primary:true
news_id:
type:integer(10)
primary:true
relations:
Message:
local:message_id
foreign:id
foreignAlias:MessageNewses
新闻:
本地:news_id
foreign:id
foreignAlias:MessageNewses
News:
...
关系:
消息:
类:消息
foreignAlias :Newses
refClass:MessageNews
local:news_id
foreign:message_id
Message:
...
relations:
Newses:
class:News
foreignAlias:Messages
refClass:MessageNews
local:message_id
foreign:news_id
code> pre>
当我在我的应用程序中尝试使用该模型时,出现此错误: p>
找不到基表或视图:1146表'uda_web_dev.message_news_rel'不存在
code> pre>
...毫无疑问地提到了这部分查询: p>
FROM news n LEFT JOIN message_news_rel
code> pre>
这使我假设Symfony在尝试建立关系时没有将连接从我的默认数据库切换到我的外部数据库。 p>
如果我遗漏了任何重要细节,请与我们联系。 p>
此问题是否已解决? p>
div>