Я работаю с symfony2, у меня есть таблица, и я хочу вручную назначить идентификатор.
В документации доктрины я нашел это:
Идентификатор стратегии генерации
"NONE: Tells Doctrine that the identifiers are assigned (and thus generated)
by your code. The assignment must take place before a new entity is passed to
EntityManager#persist.
NONE is the same as leaving off the @GeneratedValue entirely."
Обратите внимание на это: «назначение должно произойти до того, как новый объект будет передан в En ..»
Как мне этого добиться?
Я делаю это:
$empleado->setId("989865446");
но там написано:
Entity of type Entity\Empleado is missing an assigned ID. The identifier
generation strategy for this entity requires the ID field to be populated before
EntityManager#persist() is called. If you want automatically generated
identifiers instead you need to adjust the metadata mapping accordingly.
EDIT:
/**
* @var integer $id
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
*/
private $id;
и
public function setId($id)
{
$this->id = $id;
}