Казвайки Model.index(:field => -1)
, повече или по-малко, просто регистрира съществуването на индекса с Model
, всъщност не създава индекс. Търсите create_indexes
:
Така че бихте искали да кажете:
Model.index(field: -1)
Model.create_indexes
Можете също да ги създадете директно през Moped, като извикате create
в indexes
на колекцията
:
Mongoid::Sessions.default[:models].indexes.create(field: -1)
Model.collection.indexes.create(field: 1)
# or in newer versions:
Model.collection.indexes.create_one(field: 1)
Mongoid::Sessions
е преименуван на Mongoid::Clients
в по-новите версии, така че може да се наложи да кажете:
Mongoid::Clients.default[:models].indexes.create(field: 1)
Model.collection.indexes.create(field: 1)
# or in even newer versions:
Model.collection.indexes.create_one(field: 1)
Благодарение на js_ и mltsy за отбелязване на тези промени.