在我的网络项目中,我有更旧和更新的按钮。如果我点击旧版,它必须显示以前的博客详细信息,反之亦然。现在我在后端传递当前id,我必须在MongoDB中搜索并找到以前的id。怎么做到这一点。如果有任何与此相关的链接,请提供。
这是我正在使用当前ID的代码:
Controller.js :
RewriteCond %{HTTP_HOST} ^test.example\.com$
RewriteCond %{HTTP_USER_AGENT} !^static.example\.com$
RewriteRule ^(.*)\.(png|js|jpg|gif|ico)$ http://static.example.com/$1.$2 [NE,R=302,L]
在 service.js :
$scope.previousBeat = function(beatId){
var beatId = beatId;
blogService.getPreviousBlog(beatId, function(data){
$scope.blogId = data;
})
};
在 controller.java :
this.getPreviousBlog = function(id, callback){
var url = 'blog/' + id + '/details';
httpService.getRequest(url, callback);
};
Service.java:
@RequestMapping(value = "/{id}/details", method = RequestMethod.GET)
public @ResponseBody Blog getPreviousBlogWithId(@PathVariable("id") String id) {
try {
Blog blog = blogService.findBlogById(id);
return blogService.incrementViewCount(blog);
} catch (Exception e) {
// log.error("Error while retrieving blog", e.getMessage());
}
return null;
}
有没有办法获得以前的身份证。
答案 0 :(得分:2)
如果您的收藏记录按id
排序,那么您可以这样写:
db.blog.find({_id: {$lt: priviousId}}).sort({_id: 1}).limit(1)[0];
基本上,我们按id
排序,然后使用$lt
对您馆藏中的_id
进行排序,只获得第一条记录。那将是你以前的博客。
在Groovy代码中:
blogRepo.find(["_id": ["$lt": priviousId]]).sort(["_id": 1]).limit(1)[0];