2017-01-29 6 views
0

Могу ли я создать текстовый индекс для всех полей в рубиновой модели, как с помощью этой команды MongoDB: db.documents.createIndex({ "$**": "text" }, { name: "TextIndex" })Mongoid создания текстового индекса на всех текстовых полей на модели

также может мы как-то добавить номер свойства индекса. Я пытался, как это, но это не

def fulltext_index 
    attributes.except(:_rev, :_type, :doc_type).values.map{|e| e.class==String ? e.to_s : ""}.join(" ").strip + " " + sequence.to_s 
end 

index({ fulltext_index: "text"}) 

ответ

0

Вы можете создать индекс, что нужно в качестве второй линии в следующем примере:

client = Mongo::Client.new([ '127.0.0.1:27017' ], :database => 'music') 
client[:bands].indexes.create_one({ "$**": "text" }) 

Взгляните на эту ссылку для получения дополнительной информации : https://github.com/mongodb/mongo-ruby-driver/blob/master/docs/tutorials/ruby-driver-indexing.txt