dtr32787 2013-07-25 23:17
浏览 83
已采纳

如何在'doctrine:generate:entity'命令中指定id选项?

I'm using doctrine:generate:entity command to generate entities. I want to use guid (string(32)) instead of integer as id type, but when I specify it like id:string(32) in --fields option I get following error:

[Doctrine\ORM\Mapping\MappingException]
Duplicate definition of column 'id' on entity 'Acme\DemoBundle\Entity\Test' in a field or discriminator column mapping.

What should I do to get it working?

@answer: As @loicfavory wrote in comment to his answer the only way is to extend Sensio\Bundle\GeneratorBundle\Generator\DoctrineEntityGenerator class where id options are set manually.

  • 写回答

1条回答 默认 最新

  • doujiu3095 2013-07-25 23:31
    关注

    The Id is automatically generated by the DoctrineEntityGenerator with the integer type. I think that if you specify it with the --fields option, it duplicate the creation of the field.

    That's the error you got.

    Did you try to change the type manually in the entity class, after the command create it ?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?