三項関係をマッピングしようとしています。ER モデルは次のとおりです。
Responsable はユーザー、Alumno は別のタイプのユーザー (学生) です。また、TipoRelacion は、責任者が学生 (卒業生) の母親、父親、または家庭教師のいずれであるかを定義します。
したがって、関係 (alumno_relacion_responsable) をマップし、他のテーブルから双方向の OneToMany を定義すると思います。
私のエンティティは次のとおりです。
class Responsable{
// other declarations
/**
* @ORM\OneToMany(targetEntity="ResponsableAlumno", mappedBy="alumno")
*/
protected $hijos;
// More declarations
}
class Alumno{
// other declarations
/**
* @ORM\OneToMany(targetEntity="ResponsableAlumno", mappedBy="responsable")
*/
protected $padres;
// More declarations
}
したがって、relationchip エンティティでは次のようになります。
Class ResponsableAlumno{
/**
* @ORM\Id
* @ORM\Column(name="Responsable_IdUsuario")
* @ORM\ManyToOne(targetEntity="Responsable", inversedBy="idusuario")
* @ORM\JoinColumn(name="Responsable_IdUsuario", referencedColumnName="idusuario")
*/
protected $responsable;
/**
* @ORM\Id
* @ORM\Column(name="Alumno_IdUsuario")
* @ORM\ManyToOne(targetEntity="Alumno", inversedBy="idusuario")
* @ORM\JoinColumn(name="Alumno_IdUsuario", referencedColumnName="idusuario")
*/
protected $alumno;
// Other declarations
}
しかし、エンティティをテストするとき、Symfony は (ロード スクリプトで) 言います:
注意: 未定義のインデックス: /var/www/AppsManantiales/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php の卒業生
私のエラーは何ですか?