JMS 序列化程序表达式在 Symfony 3.4 的虚拟 属性 中不起作用

JMS Serializer expressions not working in virtual property with Symfony 3.4

我最近深入研究了 JMS Serializer,虽然我喜欢它如何为 serialisation/deserialisation 中的开发人员提供很多方便的包,但是关于包中可用选项的文档非常缺乏。

我正在尝试使用表达式解析虚拟 属性,但出现以下错误。

The property expression_prop on MyPackageName\SubPackage\ClassZ requires the expression accessor strategy to be enabled.

注意:class 路径已更改为虚拟路径。

这是 属性 我正在尝试创建

的 YAML 配置部分
 virtual_properties:
     expression_prop:
         exp: object.isUnCategorized()
         serialized_name: is_categorized
         groups: [tr_view]
         type: boolean

这里是 app/config.yaml

中 JMS 序列化程序的 YAML 配置部分
jms_serializer:
metadata:
    auto_detection: true
    directories:
        accounting-process:
            namespace_prefix: "DummyBundleName\SubPAth\Application\DTO"
            path: "%kernel.root_dir%/../src/path-to-config-directory"

请注意,由于它的敏感性,绝对路径再次被替换。

需要安装ExpressionLanguage Component

symfony 3.4 命令:

composer require symfony/expression-language:^3.4