1
我有一个用户。一些用户使用消息传递系统。这些用户(但不是全部)具有messageUserSettings。我想创建这些实体之间的“OneToOne”关系。学说OneToOne关系不从反面加载
这是我(编辑了下来):
MessageUserSettings.php
<?php
use Doctrine\ORM\Mapping as ORM;
/**
* MessageUserSettings
* @ORM\Entity
* @ORM\Table(name="message_user_settings")
*/
class MessageUserSettings {
/**
* @var User
*
* @ORM\OneToOne(targetEntity="User", inversedBy="messageSettings")
*/
protected $user;
/**
* Get user
* @return User
*/
public function getUser()
{
return $this->user;
}
}
user.php的
3210我可以看到外键和领域在预期的表格中。
TABLE_NAME COLUMN_NAME CONSTRAINT_NAME REFERENCED_TABLE_NAME REFERENCED_COLUMN_NAME
message_user_settings user_id FK_4C6502BDA76ED395 users id
我可以去从MessageUserSettings
到User
而不是周围的其他方式。我错过了什么?
'JoinColumn'自动应用于像(基于名称)反正,然而即使该行仍然无法正常工作。 – DanielM
http://doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/association-mapping.html – scoolnico
“上面的@JoinColumn是可选的,因为它会默认使用address_id和id。省略它并让它使用默认值。“ – DanielM