!!!!!新来的同学不要根据第一条评论去安装,安装方法已经更新
到grunt中文网插件页看如何安装插件,版本不同安装方法有区别,http://www.gruntjs.net/plugins
到grunt中文网插件页看如何安装插件,版本不同安装方法有区别,http://www.gruntjs.net/plugins
2017-04-30
全部跟完啦!撒花!
https://github.com/chenyeqing/movie_node-mongo
欢迎大家交流指正
https://github.com/chenyeqing/movie_node-mongo
欢迎大家交流指正
2017-04-28
最新回答 / Huauauaa
Number.prototype.toString ( [ radix ] )NOTEThe optional radix should be an integer value in the inclusive range 2 to 36. If radix not present or is undefined the Number 10 is used as the value of radix.The following steps are performed:Let x be thisNumber...
2017-04-27
mocha的教程:
http://www.ruanyifeng.com/blog/2015/12/a-mocha-tutorial-of-examples.html
http://www.ruanyifeng.com/blog/2015/12/a-mocha-tutorial-of-examples.html
2017-04-27
这个帖子里有人回答貌似说,bcrypt在加盐hash的时候,会把盐作为明文合并到最终的hash密码里,在比较的时候从这个最终hash密码里面提取盐,再加到明文密码里面做比较,而不是之前猜想的再生成新的随机盐。此处还说明,这种方式只适用于加密也是使用bcrypt的情况,所以估计是bcrypt的内部机制使得它能够从最终hash密码里面提取盐吧。不知道我这么理解对不对,这里scott应该讲解下。
2017-04-27
对比较的代码比较好奇,用明文密码和加盐后的hash密码比较,为啥可以通过。就算比较方法内部生成了随机的盐,然后拼上它去比较,那又是如何做到这个随机盐和注册时候的随机盐一直的呢?google了一下,看到这个:
http://stackoverflow.com/questions/13023361/how-does-node-bcrypt-js-compare-hashed-and-plaintext-passwords-without-the-salt
http://stackoverflow.com/questions/13023361/how-does-node-bcrypt-js-compare-hashed-and-plaintext-passwords-without-the-salt
2017-04-27
报 MongooseError: Comment validation failed 错误的看看你的CommentSchema是不是打错了
2017-04-26
//在新分类中添加该电影
Category.findById(newCategory,function(err,category){
if(err){
console.log(err)
}
category.movies.push(movie._id)
category.save(function(err,category){
res.redirect('/movie/'+movie._id)
})
})
})
}else{
res.redirect('/movie/'+movie._id)
}
Category.findById(newCategory,function(err,category){
if(err){
console.log(err)
}
category.movies.push(movie._id)
category.save(function(err,category){
res.redirect('/movie/'+movie._id)
})
})
})
}else{
res.redirect('/movie/'+movie._id)
}
2017-04-26
//更新category表
if(oldCategory!=newCategory){
Category.findById(oldCategory,function(err,category){
//清除原分类中的此电影
for(var i=0;i<category.movies.length;i++){
if(category.movies[i]==id){
category.movies.splice(i,1);//从第i个元素开始,删除一个元素
break;
}
}
category.save(function(err,category){})
if(oldCategory!=newCategory){
Category.findById(oldCategory,function(err,category){
//清除原分类中的此电影
for(var i=0;i<category.movies.length;i++){
if(category.movies[i]==id){
category.movies.splice(i,1);//从第i个元素开始,删除一个元素
break;
}
}
category.save(function(err,category){})
2017-04-26
最新回答 / 坨坨儿
普通评论也要有对应页面或对象,find()里面不应该为空,需指定查找的对象id,,因为评论需要与被评论的目标进行绑定,后面的populate设置才有意义,否则就不需要populate中间件操作了
2017-04-22