【问题标题】:Get ActiveRecord from Redis Server从 Redis 服务器获取 ActiveRecord
【发布时间】:2012-11-28 10:52:06
【问题描述】:

在我的应用程序中,我有许多标准 SQL 查询,例如按 id 查找模型。

我想在 Redis 中缓存这些查询(以 1 小时为例)。

我可以存储模型的 JSON 表示,获取并解析这个字符串,但它将是一个 ruby​​ 哈希。

这不方便,因为我需要像 ActiveRecord 对象一样操作这些对象。

如何将此对象从哈希转换为 AR?

Marshal.dump 可以帮助我吗?

【问题讨论】:

    标签: ruby-on-rails activerecord serialization redis


    【解决方案1】:

    您可以使用Marshal.dumpMarshal.load 序列化AR 对象,然后将它们加载回来。不过,这有一些缺点。对于当前版本的 Rails,自动加载与 Marshal.load 不兼容。最近有一个 PR 让 Marshal.load 和自动加载器一起工作。 (https://github.com/rails/rails/pull/8246)。

    【讨论】:

      猜你喜欢
      • 2017-05-01
      • 2013-10-20
      • 2016-02-09
      • 1970-01-01
      • 2012-05-03
      • 2013-11-08
      • 2017-08-18
      • 2015-04-20
      • 1970-01-01
      相关资源
      最近更新 更多