php – Symfony2:字段或标识符列映射中实体上列’id’的重复定
发布时间:2020-12-13 16:01:13 所属栏目:PHP教程 来源:网络整理
导读:我在Symfony2中使用实体继承时遇到问题.这是我的两个班级: use DoctrineORMMapping as ORM;/** * @OrmMappedSuperclass */class Object{ /** * @var integer * * @ORMColumn(name="id",type="integer") * @ORMId * @ORMGeneratedValue(strategy="AUTO
我在Symfony2中使用实体继承时遇到问题.这是我的两个班级:
use DoctrineORMMapping as ORM; /** * @OrmMappedSuperclass */ class Object { /** * @var integer * * @ORMColumn(name="id",type="integer") * @ORMId * @ORMGeneratedValue(strategy="AUTO") */ private $id; } /** * @OrmMappedSuperclass */ class Book extends Object { } 当我运行php app / console doctrine:schema:create时出现以下错误: [DoctrineORMMappingMappingException] Duplicate definition of column 'id' on entity 'NameSiteBundleEntityBook' in a field or discriminator column mapping. 可能是什么导致了这个? 谢谢 :) 更新: 你是对的我错过了这个.现在我使用单表继承,两个类都是实体: /** * @Entity * @InheritanceType("SINGLE_TABLE") * @DiscriminatorColumn(name="discr",type="string") * @DiscriminatorMap({"object" = "Object","book" = "Book"}) */ 但我仍然得到相同的错误消息.
实际上我在Resources / config / doctrine /中找到了yml文件,它们定义了我的实体,而不仅仅是使用注释.
我删除了这些文件,现在正在运行. 谢谢你的帮助 ! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |