我有2个捆绑包,1个CMS捆绑包将是父捆绑包。我在两个捆绑包中有重复的实体。像User
CMS捆绑包中的用户,我使它成为一个抽象类。(不确定这是否是正确的选择。实际上,我想要的是扩展我的用户实体,如果需要的话。)
CMS用户:
abstract class User implements UserInterface
捆绑包用户:
use MV\CMSBundle\Entity\User as BaseUser;
/**
* @ORM\Entity(repositoryClass="MV\NameBundle\Repository\UserRepository")
* @DoctrineAssert\UniqueEntity(fields={"email"}, message="user.email.already.exist" )
*/
class User extends BaseUser
{
....
}
我得到错误Class "MV\CMSBundle\Entity\User" is not a valid entity or mapped super class.
我搜索了symfony的文档,找到了这个页面:实体-实体-Map,但他们没有添加一些内容xD
哦,不,我不想使用FOSUserBundle ;)
交响曲:2.1
5条答案
按热度按时间irlmq6kh1#
在我的例子中,我在类定义中缺少
* @ORM\Entity
。yfjy0ee72#
按如下方式定义基类:
定义真实的实体:
因为您缺少基类上的@MappedSuperclass注解,所以Doctrine抛出您提到的异常。
2nbm6dog3#
在我的例子中,问题是
eaccelerator
,因为它去掉了Doctrine使用的所有注解。禁用eaccelerator
后,它工作了。你可以禁用你的php设置,或者,在
web/app_dev.php
或web/app.php
文件中。**注意:**禁用此选项后,请清除symfony2缓存。
gev0vcfq4#
我也有同样的问题。但是为了让它工作,我不得不改变台词:
nnt7mjpx5#
我在Linux服务器中遇到了同样的问题。小心区分大小写。我不得不替换这个:
用这个: