我正在使用Symfony2运行一个Symfony2应用程序,并使用FOSUserBundle来管理我的用户。
现在我实现了StofDoctrineExtensionBundle来使用可日志扩展。不幸的是,我无法记录username
和email
。如果我试图通过YML:激活日志记录
AcmeMyBundleEntityUser:
type: entity
gedmo:
loggable: true
fields:
id:
...
username:
type: string
gedmo:
- versioned
email:
type: string
gedmo:
- versioned
我有
字段或鉴别器列映射中实体的列"username"的定义重复。
因此,我尝试激活登录注释(注意,我通过YML定义了所有其他实体):
use FOSUserBundleModelUser as BaseUser;
use GedmoMappingAnnotation as Gedmo;
/**
* @GedmoLoggable
*/
class User extends BaseUser {
...
/**
* @var string
* @GedmoVersioned
*/
protected $username;
/**
* @var string
* @GedmoVersioned
*/
protected $email;
但是:什么都没发生。我的User
的所有其他属性都已记录,但username
和email
没有。
为了激活这两个属性的日志记录,我必须更改什么?或者这是FOSUserBundle和StofDoctrineExtensionBundle之间的相互依赖关系,我无法影响它?
您添加了此配置吗?:
//app/config/config.yml
orm:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: true
mappings:
translatable:
type: annotation
alias: Gedmo
prefix: GedmoTranslatableEntity
dir: "%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Translatable/Entity"
loggable:
type: annotation
alias: Gedmo
prefix: GedmoLoggableEntity
dir: "%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Loggable/Entity"
tree:
type: annotation
alias: Gedmo
prefix: GedmoTreeEntity
dir: "%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Tree/Entity"
sluggable:
type: annotation
alias: Gedmo
prefix: GedmoSluggableEntity
dir: "%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Tree/Entity"