Symfony2原则-创建主宽度两个字段
我想在我的实体“Grupo”中设置一个主键,它必须由两个字段组成:“id_Grupo”和“id_estudiante”。我不知道怎么做。我需要帮助。谢谢Symfony2原则-创建主宽度两个字段,symfony,doctrine,composite-primary-key,Symfony,Doctrine,Composite Primary Key,我想在我的实体“Grupo”中设置一个主键,它必须由两个字段组成:“id_Grupo”和“id_estudiante”。我不知道怎么做。我需要帮助。谢谢 /** * @ORM\Entity() * @DoctrineAssert\UniqueEntity(fields = {"id_grupo", "id_estudiante", "nombre_grupo"}) * @DoctrineAssert\ */ class Grupo { /** * @ORM\Id
/**
* @ORM\Entity()
* @DoctrineAssert\UniqueEntity(fields = {"id_grupo", "id_estudiante", "nombre_grupo"})
* @DoctrineAssert\
*/
class Grupo
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue
*/
protected $id_grupo;
/**
* @ORM\ManyToOne(targetEntity="Estudiante", inversedBy="grupos")
* @ORM\JoinColumn(name="estudiante_id", referencedColumnName="id")
**/
protected $id_estudiante; // Estudiante propietario del grupo
/** @ORM\Column(type="string", length=100) */
protected $nombre_grupo;
}
}基本上,您可以执行类似的操作(未选中,因此需要选中:): 当然,你需要阅读
/**
* @ORM\Entity()
* @DoctrineAssert\UniqueEntity(fields = {"id", "guid"})
*/
class Estudiante implements UserInterface
{
/**
* @ORM\Id
* @ORM\Column(type="string",length=100)
* @Assert\NotBlank(message = "Por favor, indica tu email")
* @Assert\Email(message = "El email introducido no es válido",
* checkMX=true)
* @ORM\ManyToMany(targetEntity="Estudiante", mappedBy="mis_amigos")
*/
protected $id_estudiante;
(...)
/**
* @ORM\OneToMany(targetEntity="Grupo", mappedBy="id_estudiante")
**/
protected $grupos;
/**
* @ORM\Entity()
*/
class Grupo
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity="Estudiante")
*/
private $estudiante;
}