Php 删除Symfony[FOSUserBundle]中父类的映射条令字段

Php 删除Symfony[FOSUserBundle]中父类的映射条令字段,php,doctrine-orm,fosuserbundle,symfony,Php,Doctrine Orm,Fosuserbundle,Symfony,如何从映射中删除作为原则列继承的字段 例如: 在FosUserBundle中,我的用户类中不需要某些列(例如salt、expiresAt…)。我如何告诉symfony/doctor不再将此列映射到数据库/将其从映射中删除?我知道如何使用@AttributeOverride“重新配置”列,但如何从映射中完全删除字段 注意。几乎所有FOSUB用户实体的默认属性都是必需的,以使bundle按预期工作 您提供的字段(salt、expiresAt)与安全性相关,是用户属性的大部分 删除其中一个可能会对用户

如何从映射中删除作为原则列继承的字段

例如:

在FosUserBundle中,我的用户类中不需要某些列(例如salt、expiresAt…)。我如何告诉symfony/doctor不再将此列映射到数据库/将其从映射中删除?我知道如何使用@AttributeOverride“重新配置”列,但如何从映射中完全删除字段


注意。

几乎所有FOSUB用户实体的默认属性都是必需的,以使bundle按预期工作

您提供的字段(salt、expiresAt)与安全性相关,是用户属性的大部分

删除其中一个可能会对用户管理产生副作用


另外,您不能。

好的,所以我需要接受一些我不需要使用的字段,并且要知道我需要检查哪些地方需要这些我不使用的字段。这些字段中的大多数仅用于安全性,并且对于每个用户提供方都是必需的。我已经查看了所有默认字段,发现它们总是在某个地方被调用。您可以在中看到它们中的大多数的定义以及它们在中的使用方式。如果您删除盐田为什么要使用FOSUser,则可以使用基于symfony security system的简单表单登录。此外,您不能继承FOSUser实体的某些部分。此参数很弱且为false,使用bcrypt不需要salt,因此建议将其用于fos。有人应该使用fos userbundle的原因并不是因为实体中的字段,而是因为提供程序、用户管理器等良好的功能,您可以随时分叉存储库并定制它以适合您的个人用例。这可能意味着将来要做更多的工作,而不仅仅是忽略数据库中的某些字段。另一个选项是使用您自己的映射(添加到
doctrine.orm.mappings.FOSUserBundle
-中的配置,用于短配置-请参阅),并在必要时为
\u构造中未使用的FOSUserBundle字段设置默认值。同样,这也可能是超出必要的工作。我决定并已经实现了自己的“用户管理”,并删除了fosuserbundle。对于一个新项目,我建议按原样使用fos,但当您需要依赖已经存在的结构并且不允许更改它们时(因为在我的情况下,还有一个Windows服务在同一数据库上运行),则需要实现您自己的(顺便说一句,文档中描述了这一点)