Un jour, une gem

19/07/2012

Jeudi c'est Ohm

gem install ohm

Un ORM pour Redis

Aujourd’hui une gem pour utiliser Redis comme une base de données et ceci assez simplement :

require "ohm"
Ohm.connect
Ohm.redis.set "Foo", "Bar"
#=> "OK"
Ohm.redis.get "Foo"
#=> "Bar"

Un exemple un peu plus concret avec un Model :

class Event < Ohm::Model
  attribute :name
  reference :venue, :Venue
  set :participants, :Person
  counter :votes

  index :name

  def validate
    assert_present :name
  end
end

class Venue < Ohm::Model
  attribute :name
  collection :events, :Event
end

class Person < Ohm::Model
  attribute :name
end

Étant donné que cette gem a pour but de lier des objets avec une base de données clé-valeur, il n’y a pas besoin de migration. Il suffit de définir les différents attributs du Model et c’est tout :)

Voilà c’est tout pour aujourd’hui !

Le lien utile

Sur une idée de @msadouni