Я рефакторирую Old Symfony 3 и Doctrine 1.3 Project; < /p>
У меня есть 2 класса в той же таблице: журнал и конференция, отображаемые по тем же родителям. < /p>
/**
* @ODM\Document(collection="periodics")
* @ODM\InheritanceType("SINGLE_COLLECTION")
* @ODM\DiscriminatorField("periodic_type")
* @ODM\DiscriminatorMap({
"journal"=Bundle\Document\Journal::class,
"conference"=Bundle\Document\Conference::class,
})
* @Gedmo\SoftDeleteable(fieldName="deletedAt", timeAware=false)
*/
class Periodic {
...
}
/**
* @ODM\Document()
*/
class Conference extends Periodic {
...
}
/**
* @ODM\Document()
*/
class Journal extends Periodic {
...
}
< /code>
У меня также есть сборка класса со ссылкой на периодическое: < /p>
class Assembly{
/**
* @ODM\ReferenceOne(
* targetDocument=Periodic::class,
* nullable=true
* )
*/
protected $periodic;
/**
* @return mixed
*/
public function getPeriodic()
{
return $this->periodic;
}
/**
* @param mixed $periodic
* @return $this
*/
public function setPeriodic($periodic)
{
$this->periodic = $periodic;
return $this;
}
}
< /code>
Проблема с тем, чтобы получить периодическое получение с Ассамблеи, поскольку у меня есть объект периодического класса, а не журнала или конференции.
Пожалуйста, посоветуйте, как с этим справиться.>
Подробнее здесь: https://stackoverflow.com/questions/797 ... superclass