العقيدة / السمفونية - الميراث - العلاقات

0

لدي كيانين: Individu (فردي) و Epoux_se (زوج) يمتد الزوج فرد

class Individu
{
/**
 * @var int
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;

/**
 * @var string
 *
 * @ORM\Column(name="nom", type="string", length=30)
 */
private $nom;

/**
 * @ORM\OneToOne(targetEntity="AppBundle\Entity\Individu", cascade={"persist"})
 * @ORM\JoinColumn(name="pere_id", referencedColumnName="id", onDelete="CASCADE")
 */
private $pere;

public function __construct($nom, $prenoms, $sexe)
{
    $this->nom = $nom;
    $this->prenoms= $prenoms;
    $this->sexe = $sexe;
    $this->actes = new \Doctrine\Common\Collections\ArrayCollection();
}

وزوج الطبقة

class Epoux_se extends Individu
{
/**
 * @var int
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;

public function __construct($nom, $prenoms, $sexe, $lieuOrigine, $dateNaissance, $age)
{
    parent::__construct($nom, $prenoms, $sexe);
    $this->lieuOrigine = $lieuOrigine;
    $this->dateNaissance = $dateNaissance;
    $this->age = $age;
}

عندما أقوم باستيراد DataFixture

new Epoux_se("Aurel", ["Jean-Christophe", "Marc"], "M", "Saint-Malo", "05/08/1722", 22);

لدي خطأ في مُنشئ الزوج

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'pere_id' in 'field list'

An exception occurred while executing 'INSERT INTO epoux_se (nom, prenoms, sexe, profession, pere_id, mere_id, lieu Origine, dateNaissance, age) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)' with params ["Aurel", "a:2:{i:0;s:15:\"Jean-Christ ophe\";i:1;s:4:\"Marc\";}", "M", null, null, null, "Saint-Malo", "05/08/1722", 22]:

تركيبات:

$marie = new Individu("Duhamel", ["Ophelia", "Carmène"], "F"); 
$manager->persist($marie); 
$epoux_se = new Epoux_se("Aurel", ["Jean-Christophe", "Marc"], "M", "Saint-Malo", "05/08/1722", 22); 
$manager->persist($epoux_se); 
$manager->flush(); 

كيف تفعل؟ شكرا لكم !

2 الاجابة

1
افضل جواب

لقد وجدت حلاً! من الضروري إضافة التعليق التوضيحي التالي فوق الكيان الفردي

  • @ORM\InheritanceType("JOINED")
/**
* Individu
*
* @ORM\InheritanceType("JOINED")
*
* @ORM\Entity(repositoryClass="AppBundle\Repository\IndividuRepository")
*/
class Individu
:مؤلف
0

تغيير رؤية سمات فئة الأصل إلى محمية. ثم قم بتحديث مخطط قاعدة البيانات الخاصة بك.

:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام