我们正在编写基于 Symfony2 的自定义 CMS,目前正在开发用户系统。我们的包定义了一个BaseSiteUser
包含站点可能需要的用户数据的所有最常见属性的一个,以及一个SiteUser
扩展BaseSiteUser
和定义实体表的一个。
这个想法是,对于每个单独的项目,我们将SiteUser
通过在新项目的命名空间中创建一个更具体的实体来覆盖实体,或者如果我们不指定新的,则使用默认的实体。
我们的 bundle 架构看起来有点像这样:
OurCompany
CMSBundle
Entities
BaseSiteUser.php
SiteUser.php
CustomerName
CustomerProjectBundle
CMSBundle
Entities
SiteUser.php
我们的问题是我们无法构建模型,以便使用SiteUser
定义的 inCustomerName\CMSBundle
而不是 in OurCompany\CMSBundle
。相反,我们得到了这个错误:
[Doctrine\DBAL\Schema\SchemaException]
The table with name 'siteuser' already exists.
我们尝试查阅文档,但尚未涵盖该部分。搜索网络也没有提供解决方案。
我们正在使用注释方法来定义模型。