我从事 Symfony 3.4 项目,我对特定的 Sonata Admin 案例有疑问,这是我的情况:
我有一个包含元素的课程实体:
/**
* @ORM\OneToMany(targetEntity="App\Entity\Lessons\ElementLesson", mappedBy="lesson", cascade={"persist"})
*/
protected $elements;
Run Code Online (Sandbox Code Playgroud)
Elements 是具有继承性的抽象类
/**
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="discr", type="string")
* @ORM\DiscriminatorMap({
* "element_lesson" = "ElementLesson",
* "popup_element_lesson" = "PopupElementLesson",
* "advice_element_lesson" = "AdviceElementLesson",
* "accordion_element_lesson" = "AccordionElementLesson",
* "title_element_lesson" = "TitleElementLesson",
* "text_element_lesson" = "TextElementLesson",
* "separator_element_lesson" = "SeparatorElementLesson"
* })
*/
abstract class ElementLesson
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue
*/
protected $id;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Lessons\Lesson", inversedBy="elements")
* @ORM\JoinColumn(nullable=false, onDelete="CASCADE") …Run Code Online (Sandbox Code Playgroud)