是否有可能具有一對一關係在流程中無需設置屬性兩次?流程中的雙向一對一關係
我有兩個表以一對一的關係連接,但只有其中一個應包含此關係的額外列。
學說明確支持這一行爲: http://doctrine-orm.readthedocs.org/en/latest/reference/association-mapping.html#one-to-one-bidirectional
應該拿出一個componenttape柱類:
/**
* @Flow\Entity
*/
class Component{
/**
* @var \Some\Package\Domain\Model\Component\Tape
* @ORM\OneToOne(cascade={"all"}, inversedBy="component")
*/
protected $componentTape;
…
}
應該只是能夠找到不需要額外的柱連接的類:
/**
* @Flow\Entity
*/
class Tape{
/**
* @var \ Some\Package\Domain\Model\Component
* @ORM\OneToOne(mappedBy="componentTape")
*/
protected $component;
}
學說更新將爲這兩個模型創建額外的列。
這是我此刻workarround樣子:
class Component{
..
/**
* @param \Some\Package\Domain\Model\Component\Tape $componentTape
* @return void
*/
public function setComponentTape($componentTape) {
$this->componentTape = $componentTape;
$this->componentTape->setComponent($this);
}
僅供參考,目前有OneToOne關係的錯誤。請參閱https://review.typo3.org/#/c/35071/ – ChristianM 2015-04-07 21:50:35