为什么用Nodejs?为什么用MongoDB?从领域语言和代码简洁之道来看,这是我非常关心的问题。
Nodejs基于Javascript,MongoDB脚本同样也是基于Javascript。而且他们的数据存储格式都是JSON,这就是为什么要把他们放在一起的原因了。如果程序前后端能直接处理JSON,我想数据处理过程又可以极大的减化了,代码量又将低少1/5。多么的兴奋啊!让我们来动手验证一下想法吧。
![enter image description here][1] [1]: http://blog.fens.me/wp-content/uploads/2013/05/nodejs2.png
文章目录
- 配置Mongoose
- 创建目录及文件
- 插入数据
- POST提交JSON增加一条记录
- 查询数据,取出刚增加的记录
文章正文: http://blog.fens.me/nodejs-mongoose-json/
程序代码已经上传到github有需要的同学,自行下载。 https://github.com/bsspirit/nodejs-demo
你想说明什么? mongo本来就可以保存对象啊,什么叫让json直接入库
以自定义类型的数据结构,进行数据传输,从而减少转型带来的不必要的开销。
比如像例子中使用的电影数据结构。 mongodb schema设计好后,前后端传一套JSON的对象,用一套js的api,完成CRUD的操作。 比起原来操作,界面表单提交,后台获得参数,再解析到DB存储,省了中间一步。
注:对于组织这段话,我可能说的不是太清楚。 等我把应用上线了,再诠释出来吧。
楼主你好.我了你blog中关于介绍直接入库的方法
我想知道如何批量 保存了?
比如你定义了
var Schema = mongodb.mongoose.Schema;
var MovieSchema = new Schema({
name : String,
alias : [String],
publish : Date,
create_date : { type: Date, default: Date.now},
images :{
coverSmall:String,
coverBig:String,
},
source :[{
source:String,
link:String,
swfLink:String,
quality:String,
version:String,
lang:String,
subtitle:String,
create_date : { type: Date, default: Date.now }
}]
});
var Movie = mongodb.mongoose.model("Movie", MovieSchema);
var MovieDAO = function(){};
module.exports = new MovieDAO();
MovieSchema 然后你用
MovieDAO.prototype.save = function(obj, callback) {
var instance = new Movie(obj);
instance.save(function(err){
callback(err);
});
};
这样的话 传入一个 MovieSchema是插入数据正常的 如果插入的是MovieSchema[]这样的一组的话 数据就插入异常 这个问题困惑我很长时间了
mongoose似乎没有batch save的方法。
如果你是array,就自己做个循环插入吧。
@bsspirit 哦 这样我就理解了。。哈哈 我只是感觉每次都去进行一次save好傻的。。
mongo 自带数据导入的。这个就没必要单独拿出来说了吧。。
不能批量save可以找其他方法呀。
例如model.js的 create方法皆可以批量处理数据的嘛
@echo2600 具体是怎么用了?我查了下始终没找对方法