我正在使用 FOSUserBundle,并且我创建了一个包含两列的消息表,它们与 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”
我究竟做错了什么?
谢谢您的帮助。