我有两个实体希望使用 JMSSerializerBundle 进行序列化。Music
实体有一个映射exclusion_policy: NONE
文件。
该Music
实体具有User
来自的实体的字段FOSUserBundle
。该User
实体有一个映射文件,exclusion_policy: ALL
其中有几个字段设置为expose: true
,因此它们将被序列化。
问题是,该User
字段已完全序列化。我是否更改User
实体的映射文件都没关系。
这是它的外观:
#My/Bundle/Resources/config/serializer/Entity.Music.yml
xxx\xxx\Entity\Music:
exclusion_policy: NONE
#My/Bundle/Resources/config/serializer/Entity.User.yml
xxx\xxx\Entity\User:
exclusion_policy: ALL
properties:
id:
expose: true
username:
expose: true
username_canonical:
exclude: true
email:
exclude: true
email_canonical:
exclude: true
enabled:
exclude: true
salt:
exclude: true
password:
exclude: true
last_login:
exclude: true
confirmation_token:
exclude: true
password_requested_at:
exclude: true
groups:
exclude: true
locked:
exclude: true
expired:
exclude: true
expires_at:
exclude: true
roles:
expose: true
credentials_expired:
exclude: true
credentials_expired_at:
exclude: true
为什么它不引用它自己的映射文件?还是我在某个地方弄错了?
到目前为止我尝试了什么
我已阅读第三方元数据文档。它只是说在我的序列化程序服务中添加一个新目录。我已经这样做了,但是我必须扩展FOS\UserBundle\Entity
类,并且它也无法访问我试图排除的父受保护字段。