我在控制台上进行此查询,但是我不能简单地复制并粘贴它以在mongo shell中执行它。
是否有任何方法可以将mongoid DSL转换为真正的mongo查询语句。
由于
database=test collection=flights selector={"$query"=>{"from"=>{:$in=>["TPE"]}, "to"=>{:$in=>["HND", "NRT", "NRT|TYO"]}, "flight_date"=>{"$gte"=>2016-03-15 00:00:00 UTC, "$lt"=>2016-03-16 00:00:00 UTC}, "flight_no"=>{:$exists=>true, :$ne=>nil}, "updated_at"=>{"$gte"=>2016-03-02 09:16:13 UTC}}, "$orderby"=>{"departure_at"=>1}}
答案 0 :(得分:1)
你可以这样做:
module Mongoid
class Criteria
def to_shell
"db.#{collection.name}.find(#{selector.to_json})"
end
end
end
Flight.where({:from.in => ["TPE"], :to.in => ["HND", "NRT", "NRT|TYO"]}).to_shell