9
A
答えて
21
データベースロジックは、データモデル内にカプセル化する必要があります。モンゴースは、これを行う2つの方法、方法、統計を提供します。 メソッドは、ドキュメントにインスタンスメソッドを追加しますが、スタティクスは、モデル自体に静的な「クラス」メソッドを追加します。私たちは、尾を持つすべての動物を見つけるために、動物の似た種類を見つけるための方法、および静的なメソッドを追加することができ
var AnimalSchema = mongoose.Schema({
name: String,
type: String,
hasTail: Boolean
});
module.exports = mongoose.model('Animal', AnimalSchema);
:動物モデル以下の例を考えると
AnimalSchema.methods.findByType = function (cb) {
return this.model('Animal').find({ type: this.type }, cb);
};
AnimalSchema.statics.findAnimalsWithATail = function (cb) {
Animal.find({ hasTail: true }, cb);
};
ここで方法と静のための使用例とフルモデルだ:
var AnimalSchema = mongoose.Schema({
name: String,
type: String,
hasTail: Boolean
});
AnimalSchema.methods.findByType = function (cb) {
return this.model('Animal').find({ type: this.type }, cb);
};
AnimalSchema.statics.findAnimalsWithATail = function (cb) {
Animal.find({ hasTail: true }, cb);
};
module.exports = mongoose.model('Animal', AnimalSchema);
// example usage:
var dog = new Animal({
name: 'Snoopy',
type: 'dog',
hasTail: true
});
dog.findByType(function (err, dogs) {
console.log(dogs);
});
Animal.findAnimalsWithATail(function (animals) {
console.log(animals);
});
関連する問題
- 1. ES5でキーワード 'statics'とは何ですか?
- 2. mySqlのstatics関数(mongooseのような)をsequelizeを使って定義します
- 3. Mongoose in Meteorの使い方は?
- 4. Mongooseのpopulate()メソッドと同等のLaravel(Eloquent)
- 5. MongooseでBcryptを使用しているときは、comparePasswordメソッドでthis.passwordが未定義です。の解き方?
- 6. mongooseのインスタンスメソッドから静的メソッドにアクセスする方法は?
- 7. Mongooseのupdate()メソッドにフィールド名を渡す方法は?
- 8. public staticsでモジュールパターンを実装する方法は?
- 9. Pattern.quoteメソッドの使い方は?
- 10. getChangedCellsメソッドの使い方は?
- 11. Node.js/Mongoose/MongoDb Typescript MapReduce - emit()とArray.sum()メソッド
- 12. Mongoose - populateメソッドを使用した後の結果の処理方法
- 13. モデルのfindOneメソッドにあるMongoose TypeError
- 14. mongoose-validatorsオプションの使用方法
- 15. mongooseのtimer.setの使い方delay(1000)のように使いたいです。
- 16. ViewのsetTagメソッドの使い方は?
- 17. stutrek/scrollMonitorのメソッド 'one'の使い方は?
- 18. navigatorのpopToRouteメソッドの使い方は?
- 19. pdbのpost_mortemメソッドの使い方は?
- 20. 使いやすいコントロールフローライブラリやモジュールをmongooseとノードで使用するのは
- 21. 静的メソッドを使用してMongooseのスキーマ変数にアクセスできない
- 22. JQuery click()メソッドの使い方は?
- 23. Delphi TZipMaster - Findメソッドの使い方は?
- 24. get/setメソッドの使い方は?
- 25. pyqt widget event()メソッドの使い方は?
- 26. OpenCV:HOGDescriptor :: detectメソッドの使い方
- 27. showMessage()メソッドの使い方
- 28. Mongoose、インスタンスメソッド内のインスタンスフィールドにアクセスする正しいメソッド
- 29. Python/C++バインディング、distutilsでstatics C++ライブラリ(portaudio)をもう一度リンクする方法は?
- 30. mongooseとsubcollectionのアプローチ