使用由教義documentation學說:類表繼承:從父表添加現有的對象,以擴展表
<?php
namespace MyProject\Model;
/**
* @Entity
* @InheritanceType("JOINED")
* @DiscriminatorColumn(name="discr", type="string")
* @DiscriminatorMap({"person" = "Person", "employee" = "Employee"})
*/
class Person
{
// ...
}
/** @Entity */
class Employee extends Person
{
// ...
}
假定i有一個現有的對象者提供的爲例。我希望將此人推薦爲員工。我找不到這樣做的方法。我試圖添加OneToOne關係並創建setPerson或setUser方法。
$employee = new Employee();
$employee->setRole('ROLE_EMPLOYEE');
$employee->setPerson($person);
OR
$employee = new Employee();
$employee->setRole('ROLE_EMPLOYEE');
$person->setEmployee($employee);
我肯定沒有設法使這項工作並不能找到另一種方式來做到這一點。唯一可行的方法是刪除對象人員並使用以前的人員數據創建新員工。
任何提示或解決方案?
我遇到了同樣的問題,我決定用原始的SQL查詢做...改變DISCR手動 – Alsatian
@Alsatian謝謝。我也是這樣。好,你設法這樣做。如果有其他解決方案,我會在等待另一個解決方案時這樣做。如果你想把它作爲答案發布,我會很高興得到它。 – Brieuc