Jbuilder 使用 Jbuilder 对象提取 json 哈希结果?

Jbuilder extract json hash results using Jbuilder object?

我正在尝试使用 Jbuilder 从 json 数组中提取一些 json 对象,就像这样

irb> photos = [{"album"=>{"created_time"=>"123", "name"=>"hello"}, {"album"=>{"created_time"=>"123", "name"=>"hello2"},........]

irb> json = Jbuilder.new
irb> json.photos photos do |photo|
irb* json.created_time photo.album.created_time
irb* end
nomethoderror: undefined method 'album' for Hash:0x65...>

或使用 to_json 字符串转换为 json 字符串

nomethoderror undefined method 'map' for String:0x83....>

我只需要从中提取数据,这样我就可以得到每组 json 结果,这些结果将保存在用户对象上

我以前没有使用过 json 以及如何操作它,它在 Jbuilder 自述文件 here 中解释了如何在模型中使用 Jbuilder 但我终生不能明白它。我试着玩弄这个例子,但它不起作用。

我已经跟踪了您的代码,并且 tried.I 得到了这个解决方案,所以您可以试试这个。确保定义正确的 json 对象。

photos = [{"album"=>{"created_time"=>"123", "name"=>"hello"}}, {"album"=>{"created_time"=>"123", "name"=>"hello2"}}]

2.3.0 :011 > json.photos photos do |photo|
2.3.0 :012 >     json.created_time photo['album']['created_time']
2.3.0 :013?>   end