我一直在处理从BaseUser
FOSUserBundle
继承的User
类,所以我遇到了一个问题。我需要为BaseUser
设置序列化,但JMS序列化程序会序列化BaseUser
的所有属性。
我找到的解决方案是为android:showAsAction="always
创建自己的注释并将其存储在yaml文件中,但我不知道我该怎么做。
答案 0 :(得分:1)
默认情况下,JMSSerializerBundle使用您的AcmeBundle/Resources/config/serializer
目录来获取在yml
或xml
文件中声明的所有元数据。您需要创建名为Entity.User.yml
的文件,以指向序列化程序以使用您的AcmeBundle/Entity/User
实体。
如果您需要为第三方软件包(基本实体)定义元数据,您可以在config.yml
中定义用于获取元数据的自定义路径:
jms_serializer:
metadata:
directories:
FOSUB:
namespace_prefix: FOS\UserBundle
path: %kernel.root_dir%/serializer/FOSUB
在这种情况下,您需要在%kernel.root_dir%/serializer/FOSUB
目录中找到名称为Model.User.yml
的元数据文件。