ruby on rails - Consulta en Mongoid Hash Field
ruby-on-rails mongodb (1)
Quiero consultar en un campo Hash para una Clase de Mongoid. No estoy seguro de cómo puedo hacer esto con condiciones?
Aquí hay un ejemplo:
class Person
include Mongoid::Document
field :things, :type => Hash
end
Entonces, digamos que tengo esto:
p = Person.new
p.things = {}
p.things[:tv] = "Samsung"
Quiero consultar a la primera persona con un televisor que es un Samsung ...
People.first(:conditions => ?????
Gracias por adelantado.
Person.where(''things.tv'' => ''Samsung'').first
Aquí es donde realmente brillan Mongoid y MongoDB. Los métodos de Criterio de Person.where
( Person.where
, Person.any_of
, Person.excludes
, etc.) le darán mucha más flexibilidad que los buscadores de estilo ActiveRecord (pasando un :conditions
hash de :conditions
a Person.find
, Person.first
, etc.)
El sitio de Mongoid tiene una gran documentación sobre cómo usar los Criteria
: