在Rails中重新格式化json的最佳方式是什么?

我正在构建的应用程序通过JSON接收一些信息,但数据组织性很差。 我想重建JSON输出。 我收到的JSON是完全平坦的,并且某些东西应该嵌套。 为了说明我的意思:

我得到这样的东西:

{[
 {fullname: 'Joe', session: 'A', time: '5:00', room: 'Ballroom'},
 {fullname: 'Abe', session: 'B', time: '5:00', room: 'Bathroom'},
 {fullname: 'Mike', session: 'C', time: '6:00', room: 'Bathroom'},
]}

我想要这样的东西:

   {
    rooms: [
      {
       name: 'Ballroom',
       sessions: [
        {
         title: 'A',
         speakers: [{name: 'Joe'}]
        }
       ]
      },
      {
       name: 'Bathroom',
       sessions: [
        {
         title: 'B',
         speakers: [{name: 'Abe'}]
        },
        {
         title: 'C',
         speakers : [{name: 'Mike'}]
        }
       ]
      }
    ]
   }

有没有什么宝石能够做这样的事情? 是否有一个应用程序的特定部分,这个操作应该遵循MVC?

我应该注意到,所有这些应用程序都会收到此JSON,然后对另一个应用程序进行API调用,以在该应用程序的数据库中创建/更新信息以反映JSON中的内容。


使用:

JSON.pretty_generate your_hash

例如:

require 'json'
my_json = { :array => [1, 2, 3, { :sample => "hash"} ], :foo => "bar" }
puts JSON.pretty_generate(my_json)

请参阅:如何在Ruby on Rails中“漂亮”地格式化JSON输出?


您可以使用jbuilder或rabl gems重新格式化。 用法和示例在他们的自述文件中相当困难

链接地址: http://www.djcxy.com/p/47169.html

上一篇: Best way to reformat json in Rails?

下一篇: how to create a custom json from raw data (database data)