5

SailsJS アプリケーションに次のモデルがあります。フィールド「room_name」と「school_id」に複合一意キーを追加したいと考えています。

私が現在行っていることは、mongo から次のコマンドを実行することです。

 db.room.ensureIndex({'room_name': 1, 'school_id':1}, {unique: true})

質問 1 私のやり方は正しいですか?

質問 2 (mongo コマンドラインから) mongodb を手動で変更せずに、このコマンドを自動的に呼び出すようにモデルを変更することは可能ですか?

これがモデルです

module.exports = {

    schema: true,

    attributes: {

        room_name: {
            type: 'string',
            required: true
        },

        school_id: {
            type: 'string',
            required: true
        },

        children_count: {
            type: 'integer',
            required: true
        }
    }
   }
4

4 に答える 4

4

私は、sails-mongo アダプターを使用するモデルに高度なインデックス作成オプションを提供するために、sails フックを作成しました。

すべての mongo インデックス作成オプションをサポートします。

https://www.npmjs.com/package/sails-hook-mongoat

于 2015-05-26T21:28:16.477 に答える
3

Sails は現在 (v0.10 の時点で) マルチキー インデックスをサポートしていませんが、私たちのレーダーにはあります。今のところ、Mongo コンソールでインデックスを直接指定する方法が正しい (そして唯一の) 方法です。

于 2014-04-07T04:40:06.623 に答える
0

移行を使用していますhttps://github.com/tj/node-migrate

索引の生成用

私のコード例

于 2016-02-02T09:45:25.950 に答える