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