Hola,

Tengo una base de datos con 2 tablas y 2 clases de AR que las mapean:

class Foo < ActiveRecord::Base
  has_many :properties

  # Tiene otras relaciones y valores que no son relevantes para lo que
quiero preguntar.
end

class Property < ActiveRecord::Base
  belongs_to :foo
  # Tiene 2 campos, key (que es único en el contexto del foo al que
pertenece) y value.
  # Ambos son strings y representan un diccionario con propiedades de cada
foo.
end

¿Cómo hago en una query de Active Record para encontrar todos los foo tales
que tengan la property con key "k" y value "v"?

Lo único que se me ocurre es:
Property.find( :all, :cond => ["name = ? and value = ?", "k", "v"]).map {
|p| p.foo }

¿Está bien o hay otra forma más "activerecordesca"?

¿Y si quiero complicar la condición (ej, key=k, value=v1|v2)?

Muchas gracias,
Aureliano.
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a