sql >> データベース >  >> NoSQL >> MongoDB

mongoidを使用して動的にインデックスを作成する

    Model.index(:field => -1) 、多かれ少なかれ、インデックスの存在を Modelに登録するだけです。 、実際にはインデックスを作成しません。 create_indexesを探しています

    だからあなたは言いたいでしょう:

    Model.index(field: -1)
    Model.create_indexes
    

    create > コレクションのインデックス

    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. ネストされたオブジェクトプロパティでMongoDB$neを使用する方法

    2. PowerShellはMongoDBC#ドライバーのメソッドと互換性がありませんか?

    3. MapReduceのHadoopでのシャッフルと並べ替え

    4. PHPでmysqlとmemcached間の接続を確認する方法