【问题标题】:Redis backed Rails modelRedis 支持的 Rails 模型
【发布时间】:2012-04-17 17:48:45
【问题描述】:

我正在寻找可以将整个基于 Rails 的模型存储在 Redis 中的东西。在这里https://github.com/nateware/redis-objects 可以找到 Redis 对象,但仅当您的模型已经由 ActiveRecord 之类的东西支持并且它需要唯一的 id 生成器时才有效。我不希望创建一个 ActiveRecord 支持的模型,因为我想将所有内容直接保存到内存中而不是数据库中。

是否有一个我现在可以使用的工具,可以让我做以下事情:

RedisBackedModel.find_by_name('foo')

它会从 Redis 中检索 RedisBackedModel 吗?

【问题讨论】:

    标签: ruby-on-rails ruby redis


    【解决方案1】:

    我认为Modis 正是这样做的。

    【讨论】:

      【解决方案2】:

      我之前使用Ohm 来存储几个小时后过期的搜索;这很不错。我认为 DataMapper 也有一个redis adapter,虽然我从未使用过它。这是我认为您所追求的一些欧姆代码:

      class RedisBackedModel < Ohm::Model
        attribute :name
        index :name
      end
      
      rbm = RedisBackedModel.create :name => "foo"
      rbm.id # => 1
      
      # Search by name:
      RedisBackedModel.find(:name => "foo")
      
      # Search by id (like AR-style model.get(id)):
      RedisBackedModel[1]
      

      【讨论】:

      • 你用过带轨道的 OHM 吗?
      • 他们抱怨“不幸的是,我们根本不使用带导轨的欧姆(而且从未计划过)。” github.com/soveran/ohm/issues/26
      • @PravinMishra 是的,几年前我在一个项目中使用了它,当时 Rails 3.0 刚刚问世。它工作正常。
      猜你喜欢
      • 1970-01-01
      • 2020-07-18
      • 1970-01-01
      • 2021-10-31
      • 2018-10-20
      • 1970-01-01
      • 2020-04-06
      • 2015-08-17
      • 1970-01-01
      相关资源
      最近更新 更多