- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有一个查询*,结果如下:
#<ActiveRecord::Relation [
#<BookRank id: 2, book_id: 2, list_edition_id: 1, rank_world: 5, rank_europe: 1>,
#<BookRank id: 3, book_id: 1, list_edition_id: 1, rank_world: 6, rank_europe: 2>,
#<BookRank id: 8, book_id: 2, list_edition_id: 3, rank_world: 1, rank_europe: 1>,
#<BookRank id: 9, book_id: 1, list_edition_id: 3, rank_world: 2, rank_europe: 2
]>
我想要得到的是这样的哈希:
{
book_id => {
list_edition_id => {
"rank_world" => value,
"rank_europe" => value
}
}
}
(最重要的是根据最低 list_edition_id 的 rank_world 值对哈希进行排序,但这可能太复杂了。)
ranks_relation.group_by(&:book_id)
给我一个散列,其中 book_ids
是键,但排名数据仍在数组中:
{
2 => [
#<BookRank id: 2, book_id: 2, list_edition_id: 1, rank_world: 5, rank_europe: 1>,
#<BookRank id: 8, book_id: 2, list_edition_id: 3, rank_world: 1, rank_europe: 1>
],
1 => [
#<BookRank id: 3, book_id: 1, list_edition_id: 1, rank_world: 6, rank_europe: 2>
#<BookRank id: 9, book_id: 1, list_edition_id: 3, rank_world: 2, rank_europe: 2>
]
}
我应该如何进行?
*编辑: 这是模型结构和查询。另一位用户要求:
class Book < ActiveRecord::Base
has_many :book_ranks, dependent: :destroy
end
class List < ActiveRecord::Base
has_many :list_editions, dependent: :destroy
end
class ListEdition < ActiveRecord::Base
belongs_to :list
has_many :book_ranks, dependent: :destroy
end
class BookRank < ActiveRecord::Base
belongs_to :book
belongs_to :list_edition
has_one :list, through: :list_edition
end
对于查询,我已经使用了两个数组,其中包含 Book
和 ListEdition
的相关 ID:
BookRank.where(:book_id => book_ids, :list_edition_id => list_edition_ids)
最佳答案
试试这个
record = your_record
hash = {}
record.each do |record|
hash[record.book_id] ||= {}
hash[record.book_id][record.list_edition_id] = {
'rank_world' => record.rank_world,
'rank_europe' => record.rank_europe
}
end
# hash will then be {2=>{1=>{"rank_world"=>5, "rank_europe"=>1}, 3=>{"rank_world"=>1, "rank_europe"=>1}}, 1=>{1=>{"rank_world"=>6, "rank_europe"=>2}, 3=>{"rank_world"=>2, "rank_europe"=>2}}}
这将仅遍历记录一次。
关于ruby-on-rails - rails/ ruby : turning query result into multi-level hash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51171568/
我一直在探索 Mapbox Map SDK 和 Navigation SDK,但遇到了瓶颈,如有任何帮助,我们将不胜感激。 我在 GeoJSON 中定义了一些路由。是否可以将 GeoJSON 中的这条
我在 C 中有两个静态可变变量,我想在逻辑语句中检查它们。但是,当我这样做时,我收到警告“未定义的行为:此语句 1037 中未定义 volatile 访问的顺序”是否有可能在很短的时间内暂停 C 变量
有没有像 googlemaps 应用程序和 mapkit 那样做 turn-by-turn mapping 的方法?就像下面的图片。谢谢 最佳答案 我猜你想在你的应用程序中使用精细导航?在 MapKi
我正在构建一个 Android 应用程序,帮助用户在两点之间导航。这是 doc 的链接.这正是我想要提供给用户的功能,但是我希望导航在我的应用程序中进行,而不是通过以这种方式启动 Intent Uri
我正在开发从当前位置到目的地的转弯导航。我使用以下代码完成了此操作 Uri gmmIntentUri = Uri.parse("google.navigation:q="+address); Inte
假设我有一个控制 android 服务的开关:当Switch处于“on”状态时,表示服务正在运行,当开关处于“关闭”位置时,表示服务未运行。此外,当用户点击 Switch 时,它应该切换服务(因此切换
我正在尝试实现一种算法来填充一个区域,该特定算法在以下 Wikipedia 中给出“固定内存法(右手填充法)”标题下的文档。下面给出算法中发生左转和右转的特定部分... START: set
我正在使用 HERE NOKIA SDK。我已经在 2 点和语音指令之间创建了一条路线。现在我想显示图像箭头和操作的特定文本。 最佳答案 SDK不提供回合图标。请创建一些图像以将它们与机动转弯类型配对
我的应用程序需要像 OLA、UBER 和出租车出租应用程序一样包含转弯 GPS 导航。我使用 Google Direction API 来显示路径和持续时间。我检查了以下链接,但对我没有帮助。 gps
我的应用需要包含转弯 gps 导航。任何人都可以告诉如何通过转弯 gps 导航集成谷歌地图。 我可以在android开发中找到它。但是我无法从谷歌地图的 iOS 开发文档中找到导航。 https://
构建时出现以下错误: ...has undefined behavior [-Werror,-Wundefined-reinterpret-cast] Bazel 构建完全停止,因为 clang (l
如何关闭 Rmd HTML 文档中的标题? --- title: "" output: html_document --- rmarkdown::render("index.Rmd") [WARNIN
我试图使用 部署一个简单的 TURN 服务器coturn . 当我在 Trickle ICE 上测试时( turn:rtc.jackxujh.me:3478 [webrtc:mighty] ),Tri
我正在使用一个任性的库,不幸的是,它会将信息打印到 System.out(或偶尔打印到 System.err)。防止这种情况的最简单方法是什么? 我一直在考虑创建一个输出流到内存,在每次调用其中一个麻
比如说我搭建了WebRTC视频聊天网站,有的握手后连接(ICE Candidates)会直接p2p,有的会使用STUN服务器,有的会使用“不得已”的TURN服务器建立连接.与直接连接和 STUN 连接
我在查找有关如何“打开”mysqli 的确切文档时遇到了麻烦。我正在运行 OS X SL,据我所知,由于安装了 php5,mysqli 扩展也应该已经存在。 这是否像在 php.ini 中添加 Loa
在我的 Ubuntu 引擎上设计了一个简单的基于 shell/bash 的备份脚本并使其工作后,我将它上传到了我的 Debian 服务器,它在执行它时会输出一些错误。 我该怎么做才能在我的 Ubunt
我正在使用 Twilio Network Traversal Service作为 native 应用程序的一部分,我是 working on执行对等远程桌面连接。我们实现了 WebRTC 协议(pro
我正在尝试将负载均衡器放在 Turn 服务器前面以与 WebRTC 一起使用。我在下面的示例中使用了一个轮流服务器,直到负载平衡器正常工作。 Turn 服务器需要多个端口,包括一个 UDP,如下所示:
在哪些情况下我应该使用 TURN 服务器? 现在我有一个完美运行的 WebRTC 应用程序。该应用程序即将发布。 我是否需要设置自己的 TURN 服务器,或者这可能仅适用于主要应用程序? 最佳答案 已
我是一名优秀的程序员,十分优秀!