Symfony2:缺少分配的ID

Ali*_*ari 3 symfony doctrine-orm

我有一个Place和一个Placetype实体.我的Place实体将其id属性设置为AUTO:

/**
 * @var integer $id
 *
 * @ORM\Column(name="id", type="integer", nullable=false)
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;
Run Code Online (Sandbox Code Playgroud)

但是当我想要持久化对象时,我收到以下错误:

blabla\Entity\Place类型的实体缺少已分配的ID.此实体的标识符生成策略要求在调用EntityManager#persist()之前填充ID字段.如果您想要自动生成标识符,则需要相应地调整元数据映射.

你知道怎么解决这个问题吗?

谢谢你的帮助

Ali*_*ari 5

它的工作原理是替换它:

/**
 * @var integer $uid
 *
 * @ORM\Column(name="id", type="integer", nullable=false)
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;
Run Code Online (Sandbox Code Playgroud)

对此:

/**
 * @var integer $uid
 *
 * @ORM\Column(name="id", type="integer", nullable=false)
 * @ORM\Id
 */
private $id;
Run Code Online (Sandbox Code Playgroud)