Symfony Hateoas 和 JMS 序列化



我有一个实体客户,我想同时拥有Hatoas链接和自定义序列化

/**
 * Customer ORM Entity
 *
 * @package AppBundleEntity
 *
 * @HateoasRelation("self", href = @HateoasRoute("get_customers", parameters = { "customer" = "expr(object.getId())" }))
 * @HateoasRelation("customers", href = @HateoasRoute("cget_customers"))))
 */

这是仇恨链接的注释

AppBundleEntityCustomer:
    exclusion_policy: ALL
    virtual_properties:
        getFullName:
            serialized_name: full_name
            type: string

这是我对 jms 序列化的 yaml 配置,但由于某种原因,它也删除了 hateoas 链接。

我怎样才能把它找回来?告诉序列化程序不要删除_links属性?

在Hateoas文档中,它说:

重要提示:您必须以相同的方式配置序列化程序和 Hateoas。 例如,如果使用 YAML 配置序列化程序,请使用 YAML 配置 Hateoas。

例如,使用 YAML 格式进行配置,您的问题应该得到解决。

正如@takeit所说,您应该使用与序列化程序相同的配置。对于您的示例,请尝试以下操作:

AppBundleEntityCustomer:
    exclusion_policy: ALL
    virtual_properties:
        getFullName:
            serialized_name: full_name
            type: string
    relations:
        -
        href:
          route: get_customers
          parameters:
              customer: expr(object.getId())
  #       absolute: 0
        customers:
          route: cget_customers

希望这个帮助

相关内容

  • 没有找到相关文章

最新更新