2013-07-14 20 views
5

Yeniden oluşturma adımları mongoid: create_indexesMongoid "hayır jeo endeksi :(" hata

arama çalıştı:

Venue.geo_near([@lat, @long]) 

Ve var:

Moped::Errors::OperationFailure: 
    The operation: #<Moped::Protocol::Command 
    @length=135 
    @request_id=3 
    @response_to=0 
    @op_code=2004 
    @flags=[] 
    @full_collection_name="encore_backend_test.$cmd" 
    @skip=0 
    @limit=-1 
    @selector={:geoNear=>"venues", :near=>[43.670906, -79.393331], :query=>{}, :spherical=>true} 
    @fields=nil> 
    failed with error "no geo index :(" 

Herhangi bir öneriniz?

+1

için RAILS_ENV=test ile tırmık db:mongoid:create_indexes yapmak unuttum @long]) ve aynı zamanda hata dökümünde. Gerçek bir küresel coğrafi dizin uyguladığı için lütfen 2dsphere dizinini kullanmayı düşünün. – Derick

cevap

14

Aptal hata, Sen @ lat [(etrafında `` `Venue.geo_near içinde lat ve uzun yanlış bir şekilde var RSpec

Komple komut

bundle exec rake db:mongoid:create_indexes RAILS_ENV=test 
+0

zamanımı kurtardı ... kabul – Sai

+0

Adamım sorup cevapladığın için teşekkürler. Bunu yapmak zorunda olduğumu bile bilmiyordum. Bu mongoid'in belgelerinde bir yerde mi? – JGutierrezC