MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Динамично създаване на индекс с mongoid

Казвайки 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 за отбелязване на тези промени.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Връзка на Robomongo с Meteor mongodb

  2. findOneAndUpdate - Актуализирайте първия обект в масива, който има специфичен атрибут

  3. MongoDB $lookup Objectid получава празен масив?

  4. Как мога да настроя MongoDB на сървър Node.js, използвайки node-mongodb-native в EC2 среда?

  5. където е инсталационната директория по подразбиране за mongodb