我正在使用Symfony序列化程序。效果很好。
use Symfony\Component\Serializer\Annotation\Groups;
/**
*
* @Groups({"default", "notification"})
*/
public function getUser()
{
...
}
串行属性是否可以作为另一个名称?
所以我想在框架中使用getUser
,但属性应该在序列化的json中命名为profile
。
我怎么能这样做?
答案 0 :(得分:5)
编辑19-11-2018 ,此功能现在可用于Symfony 4.2:
/**
* @SerializedName("some_name")
*/
private $lastName;
doc中的更多信息。
感谢Sodj提醒。
您可以使用自定义名称转换器来实现此目的。实现此目标的每项信息都在文档的this part中。
还打开了一个问题,直接使用注释https://github.com/symfony/symfony/issues/15171覆盖序列化对象的属性名称
答案 1 :(得分:1)
您是否尝试过,就像JMSserializer一样,这个注释: @SerializedName(" changed_name") - https://jmsyst.com/libs/serializer/master/reference/annotations#serializedname?