Jms 序列化器注释作为 yaml 文件

Jms serializer annotations as yaml file

我一直在研究从 FOSUserBundleBaseUser 继承的 User class,所以我遇到了一个问题。我需要为我的 User 设置序列化,但 JMS 序列化程序序列化了 BaseUser 的所有属性。 我找到的解决方案是为 BaseUser 创建自己的注释并将其存储在 yaml 文件中,但我不知道我应该怎么做。

JMSSerializerBundle 默认使用您的 AcmeBundle/Resources/config/serializer 目录来获取在 ymlxml 文件中声明的所有元数据。您需要创建名称为 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.