問題:開発者が Mongoose スキーマを「登録」できるようにする Web サービスを作成しています。開発者はブラウザで JSON スキーマを作成し、それをサーバーに AJAX で送信します。
したがって、送信されたスキーマを使用して新しい 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);
}
これで、カスタム スキーマを使用してモデルが作成されました。
今私の問題は、このコードを実行し、モデルを作成してからサーバーを再起動した後、新しいコレクション/モデルが存在しないことです-ドキュメントが保存されたときにのみコレクションが作成されるようです-そして私はしたくありません今すぐドキュメントを保存するには (何も持っていないため)、コレクションを作成するだけです。
質問:この「固定された」スキーマを使用してコレクションを作成する方法はありますか?これにより、挿入される将来のドキュメントはスキーマに厳密に準拠する必要がありますか? 私は基本的create table
にSQLのようなものを探しています。