2012-10-30 104 views
0

嘗試設置包含動態密鑰名稱的哈希數據類型。我有一個名爲「event_id」的屬性,其中包含一個整數。我希望這是散列鍵名稱的一部分。如何在Redis&Rails中設置動態哈希鍵(哈希數據類型)?

  self.attributes.each do |field, value| 
      $redis.hset(event_id, field, value) 
      end 
     end 

通過上面的當前代碼,在Redis的關鍵是尋找像

 32434 

的目標是,我可以在關鍵的前添加一些文字,讓理想的關鍵會是什麼樣子

 this:is:the:event_id:32434 

我無法在不破壞語法的情況下找出關鍵參數中的語法。謝謝

回答

0

我通過創建一個「redis命名空間」來解決這個問題。然後,而不是做$ redis,這是一般的命名空間,我會調用這個新的命名空間來獲取正確的鍵名。命名空間是組織你的redis數據的好方法。

  $redis_event = Redis::Namespace.new("offer:with:event_id:", :redis => r)