Node Mongoose用法詳細解【Mongoose使用、Schema、対象、model文書など】
本論文の実例はNode Mongooseの使い方を述べている。皆さんに参考にしてあげます。具体的には以下の通りです。
Mongoose概要
は、JavaScriptオブジェクトとデータベースとの関係を作成するフレームです。Object related model。オブジェクトを操作すると、データベースを操作します。オブジェクトが生成され、持続化されました。
初期使用のMongoose
データベースを接続
ドキュメント構造のサポートの種類を指定します。
実例となるオブジェクトは、使用される方法、実例によって呼び出される。
構造関数
コンストラクション、パラメータ1:セット名、パラメータ2:Schema例
クエリー、パラメータ1が無視されていたり、空のオブジェクトがあればすべてのセットドキュメントに戻ります。
作成し、セット内のドキュメントを作成します。
更新、パラメータ1:照会条件、パラメータ2:更新対象は、MondoDBの更新修正器を使用することができます。
削除、パラメータ1:クエリー条件
Mongoose概要
は、JavaScriptオブジェクトとデータベースとの関係を作成するフレームです。Object related model。オブジェクトを操作すると、データベースを操作します。オブジェクトが生成され、持続化されました。
初期使用のMongoose
データベースを接続
var mongoose = require('mongoose');
//
var db = mongoose.createConnection('mongodb://localhost:27017/zf');
// open
db.once('open',function ( callback ) {
console.log(' ');
});
module.exports = db;
定義モデルschema -> schema scatic ->
を作成します
new mongoose.schema({}); // json, 。
モデルを作成するdb.model(collectionsName,schemaName);
var mongoose = require('mongoose');
var db = require('./db.js');
// schema 。 schema--
var StudentSchema = new mongoose.Schema({
name: {type: String, default: ' '},
age: { type: Number },
sex: { type: String }
});
//
StudentSchema.statics.zhaoren = function ( name,callback ) {
this.model('Student').find({'name': name},callback);
}
//
StudentSchema.statics.xiugai = function ( conditions,update,options,callback ) {
this.model('Student').update(conditions,update,options,callback);
}
var studentModel = db.model('Student',StudentSchema);
module.exports = studentModel;
app.jsでは操作類のみで、データベースを操作しません。
var Cat = mongoose.model('Cat'{'name': String, age: Number});
Cat.find({'name': 'tom'},function( err.reslut ){
var xiaomao = reslut[0];
// Cat , Cat find , find , Cat 。 // , find 。
xiaomao.age = 10;
xiaomao.save();
})
Schemaドキュメント構造のサポートの種類を指定します。
String
Number
Date
Buffer
Boolean
Mixed
ObjectId
Array
オブジェクトの定義方法実例となるオブジェクトは、使用される方法、実例によって呼び出される。
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/mlln');
var db = mongoose.connection;
db.on('open',function ( callback ) {
console.log(' ');
});
var animalSchema = new mongoose.Schema({
'name': String,
'type': String
});
animalSchema.methods.zhaotonglei = function ( cb ) {
this.model('Animal').find({'type': this.type},cb);
}
var Animal = mongoose.model('Animal',animalSchema);
//module.exports = Blog;
/*Animal.create({'name': ' ','type': ' '});
Animal.create({'name': 'imim','type': ' '});
Animal.create({'name': ' ','type': ' '});
Animal.create({'name': ' ','type': ' '});
Animal.create({'name': 'snoopy','type': ' '});
*/
//blog.save();
Animal.findOne({'name': 'imim'},function ( err,reslut ) {
var dog = reslut;
dog.zhaotonglei(function ( err,resluts ) {
console.log( resluts );
});
});
modelドキュメント操作構造関数
コンストラクション、パラメータ1:セット名、パラメータ2:Schema例
db.model(“test1”, TestSchema );
クエリークエリー、パラメータ1が無視されていたり、空のオブジェクトがあればすべてのセットドキュメントに戻ります。
model.find({}, callback);
model.find({},field,callback);
// , 2: {‘name':1, ‘age':0} name , age.(_id 1)
model.find({},null,{limit:20});
// , 3: limit 20 , 20 .
model.findOne({}, callback);
//
model.findById(‘obj._id', callback);
// , . __id
作成作成し、セット内のドキュメントを作成します。
Model.create( , callback))
更新更新、パラメータ1:照会条件、パラメータ2:更新対象は、MondoDBの更新修正器を使用することができます。
Model.update(conditions, update, function(error)
削除削除、パラメータ1:クエリー条件
Model.remove(conditions,callback);
ここで述べたように皆さんのnode.jsプログラムの設計に役に立ちます。