symfony - 序列化实体中的 JSON 根名称

标签 symfony fosrestbundle jmsserializerbundle

我正在使用 FOSRestBundle 和 JMSSerializerBundle 来输出 JSON 数据以供 ember 应用程序使用。我想使用 ember-data 的内置适配器,并且预期的 JSON 格式必须具有根名称。我目前的 JSON 如下:

{
     "user_id": 1
     "first": "Dan"
     "email": "dan@email.com" 
 }

Ember 期待,而我想要的是:
{
 "user":
   {
     "user_id": 1
     "first": "Dan"
     "email": "dan@email.com" 
    }
}

用户是实体的名称。我很确定这只是一个配置问题,但是查看文档我似乎无法找到要设置的内容。我已经尝试过@XmlRoot,但这似乎对生成的 JSON 没有影响(预期)。

最佳答案

就我个人而言,我认为 API 消费者的工作是屈服于 API,而不是相反。

我建议看一下这个将有效载荷按摩成 ember 喜欢的形状的例子:

Transform JSON to an appropriate format for RESTAdapter EmberJS

关于symfony - 序列化实体中的 JSON 根名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24288713/

相关文章:

Symfony 2 onDelete setNull

php - FOSRestBundle jsonp请求强制下载

php - JMS 序列化 @VirtualProperty 不起作用

php - 将哈希# 添加到 UrlGenerator

php - 如何在 symfony2 中创建自定义事件

symfony - 学说实体代理异常

php - 如何使用 FOSRestBundle 以 JSON 格式返回或显示数据

php - symfony/FOSRestBundle : empty JSON response (using the symfony embodied serializer)

php - jms 序列化器性能问题

json - symfony2 : JMSSerializerBundle changes the attribute name from "className" to "class_name"