开发者

Query on Mongoid Hash Field

I want to query on a Hash field for a Mongoid Class. I'm not sure how I can do this with conditions?

Here is an example:

class Person
  include Mongoid::Document

  field :things, :type => Hash
end

So, let's say that I have this:

p = Person.new
p.things = {}
p.things[:tv] = "Samsung"

I want to query for the first person with a tv that is a Samsu开发者_高级运维ng...

People.first(:conditions => ?????

Thanks in advance.


Person.where('things.tv' => 'Samsung').first

This is where Mongoid and MongoDB really shine. Mongoid's Criteria methods (Person.where, Person.any_of, Person.excludes, etc.) will give you much more flexibility than the ActiveRecord-style finders (passing a :conditions hash to Person.find, Person.first, etc.)

Mongoid's site has some great documentation on how to use Criteria:

http://mongoid.org/en/mongoid/docs/querying.html

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜