問題:開発者がMongooseスキーマを「登録」できるようにしていますこれは私のサーバーにAJAXされます。将来の使用のためにMongooseスキーマ/モデル(ドキュメントではありません)を保存しています
投稿されたスキーマを使用して新しいMongooseモデルを作成しますが、サーバーを再起動してもこのスキーマが存在する必要があります。
私のようなものがないコードがあります。
/* schemaObj is what you create a schema with,
for example { name: String, id: Number } */
registerSchema = function(model_name, schemaObj) {
desiredSchema = new Schema(schemaObj);
desiredCollection = 'collection_' + model_name;
mongoose.model(desiredCollection, desiredSchema, desiredCollection);
}
[OK]を、ので、これはカスタムスキーマを私たちのためのモデルを作成しました。
このコードを実行してモデルを作成してからサーバーを再起動すると、新しいコレクション/モデルは存在しません。つまり、ドキュメントが保存されたときだけコレクションが作成されるためです。私は(私は何も持っていないので)今すぐ文書を保存したくない、単にコレクションを作成する。
質問:この「固定」スキーマを使用してコレクションを作成する方法はありますか?そのため、将来挿入されるドキュメントは厳密にスキーマに準拠する必要がありますか?私は基本的にはcreate table
のようなものをSQLで探しています。
** 4 **は私が確認したかったものです。ありがとうございます。だから私は自分自身のデータベースに登録されたスキーマを格納する必要があります、私は文字列化されたスキーマ+コレクション名の別のコレクションを持っている必要がありますね。新しいスタートでそれらをロードし直してください。 –
はい、正確です!スキーマが動的でない場合でも、これを行う必要があります。ベスト! –