【发布时间】:2013-03-20 13:14:44
【问题描述】:
我正在使用 FOSUserBundle,并创建了一个包含两列的 Message 表,它们与 FOSUserBundle 中的用户相关。
我想使用一个查询来获取有关作者的消息和信息。
以下 schema.xml:
<?xml version="1.0" encoding="UTF-8"?>
<database name="default" namespace="Acme\StoreBundle\Model" defaultIdMethod="native">
<table name="message">
<column name="id" type="integer" required="true" primaryKey="true" autoIncrement="true" />
<column name="title" type="varchar" size="64" required="true" defaultValue="(untitled)"/>
<column name="content" type="longvarchar" />
<column name="author_id" type="integer" required="true" />
<foreign-key foreignTable="fos_user">
<reference local="author_id" foreign="id" />
</foreign-key>
<column name="recipient_id" type="integer" required="true" />
<foreign-key foreignTable="fos_user">
<reference local="recipient_id" foreign="id" />
</foreign-key>
</table>
</database>
我尝试了很多选择,但没有结果。
当我尝试时,似乎合乎逻辑:
$messages = MessageQuery::create()
->join('Message.Authorid')
->findByRecipientId(1);
我收到一个错误:“未知表或别名消息”
与:
->join('Authorid')
错误:“Acme\StoreBundle\Model\Message 表上的未知关系 Authorid”
我做错了什么?
感谢您的帮助。
【问题讨论】:
标签: symfony join foreign-keys propel fosuserbundle