Cre*_*ine 0 mysql uniqueidentifier auto-increment symfony doctrine-orm
如何在Symfony2/Doctrine2中自动生成主键?
我有我的所有实体和数据库.
在我的Symfony2控制器中,我做:
<?php
/**
* @Route("/myroute", name="myroute")
* @Template()
*/
public function myrouteAction()
{
/* Page de Création d'un retrait ou d'une réexpédition. */
$obj = new Utilisateur();
$obj->setUsermail('contact@mydomain.com');
$obj->setUserpass('coucou');
$obj->setUservalide('1');
$em = $this->getDoctrine()->getEntityManager();
$em->persist($obj);
$em->flush();
// [...]
}
Run Code Online (Sandbox Code Playgroud)
它用于测试.第一次全部正确(Utilisateur表空了).现在,当我再次调用此函数时,我得到:
SQLSTATE [23000]:完整性约束违规:1062密钥'PRIMARY'500内部服务器错误重复条目'0' - PDOException
我只想让Symfony-Doctrine-Mysql自动增加标识符.
希望这有助于:假设您正在使用注释和Doctrine ORM,您需要将策略设置为自动对象 - 来自文档(http://symfony.com/doc/current/book/doctrine.html)
/**
* @ORM\Entity
* @ORM\Table(name="product")
*/
class Product
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
--> * @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
Run Code Online (Sandbox Code Playgroud)
记住在修改对象后更新数据库模式.
| 归档时间: |
|
| 查看次数: |
6261 次 |
| 最近记录: |