我尝试使用mongoose和expressjs查找文章。我有搜索表单,输入设置为变量'titless'。
这是我的app.js文件:
app.get('/', function(req, res){
postdb.findAll( function(error,docs){
res.render('index.jade', {
locals: {
title: 'test',
articles:docs
}
});
})
});
app.post('/.:titles?', function(req, res) {
postdb.findByTitle(req.params.titless, function(error, article) {
res.render('blog_show.jade',
{ locals: {
title: article.title,
article:article
}
});
});
});
和heres findbytitle方法:
PostDB.prototype.findByTitle = function(titless, callback) {
this.getCollection(function(error, article_collection) {
if( error ) callback(error)
else {
article_collection.findOne({title: titless}, function(error,
result) {
if( error ) callback(error)
else callback(null, result)
});
}
});
};
当我点击搜索按钮时,它会转发我到localhost /? titless =关键字页面,但我仍然看到没有搜索的索引页面 文章:/。
答案 0 :(得分:0)
res.render('blog_show.jade', {
locals: {
title: article.title,
article:article
}
});
我不是百分百肯定,但你必须定义当地人吗?不应该是以下吗?
res.render('blog_show.jade', {
title: article.title,
article:article
});