ruby - 是否有 Hash.Merge 的 ActiveRecord 版本?

标签 ruby activerecord

我有一组非常大的数据,我正在对这些数据进行大量的查询后操作(排序、过滤等)。我想对仅包含排序、过滤和分页所需信息的 ActiveRecord 对象数组执行所有这些操作,然后在最后添加显示所需的数据。

例如,假设我有一个包含两个表的数据库:baseball_players 和 player_infos。 baseball_players 表包含所有有趣的东西(统计数据、球队、姓名、生日等等)。 Player_infos 包含 player_id、player_rank 和 player_position。我有 15000 名球员,我想找出 100-150 位有史以来最佳 catch 手的号码。我检索了一个包含所有 player_info 的数组,过滤为仅捕手,按 player_rank 排序,然后检索记录 100-150。

将生成的 player_info 记录与其对应的 baseball_player 记录合并的最佳方法是什么? Hash.merge 会完美地工作,但我不想将这些对象转换为哈希。 ActiveRecord 是否支持类似的东西?

请注意,我有一个限制,我不能简单地使用 SQL 查询数据 - 我必须手动排序和过滤包含所有 15000 条 player_info 记录的对象。

最佳答案

我相信您正在寻找ActiveRecord::Base#update .

关于ruby - 是否有 Hash.Merge 的 ActiveRecord 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7113256/

相关文章:

ruby-on-rails - after_initialize和after_find回调顺序在Active Record对象生命周期中?

activerecord - 使用 CodeIgniter Active Record 函数将子句添加到不带引号的 MySQL 语句

mysql - 如何确保 SQL 语句被执行,然后才开始下一个代码步骤

ruby-on-rails - 为什么当属性更新为 nil 时不触发 before_save/after_save?以及如何触发?

ruby - 从 map 构建排序部分

ruby-on-rails - Capybara rspec - 将文件附加到隐藏的 file_field

ruby - gsub 或 scan 中的匹配位置

ruby - 记录到 rake 的跟踪日志

ruby - 如何使用 Ruby 删除字符串中某个字符后的子字符串?

ruby-on-rails - 使用相同的操作来显示所有(索引)对象,同时还显示由 url 参数限定范围的列表