MeteorJS&MongoDB:如何获得接下来的10个条目
MeteorJS & MongoDB: How to get next 10 entries
我有一个这样的数据库:
{
"_id" : "xFZtChfKTf3GLxFEg",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "Kissing Prank - How to Kiss ANY Girl in 10 SECONDS - Kissing Strangers/Funny Videos/Best Pranks 2014",
"v_id" : "Fa1agPyuRRM",
"views" : 0
},
{
"_id" : "RB2uwCfsjujFwFpZe",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "Dropping Guns in the Hood (PRANKS GONE WRONG) - Pranks in the Hood - Funny Videos - Best Pranks 2014",
"v_id" : "K1SksoAHIa0",
"views" : 0
},
{
"_id" : "3CvrFtYo4wWE5Coj7",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "TOP Pranks 2014 - Pranks in the Hood - Pranks Gone Wrong - Funny Pranks 2014 - PRANK COMPILATION",
"v_id" : "oEgXOhxXvsc",
"views" : 0
},
{
"_id" : "doiA7EPkwCe5meyJ7",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "Top 5 Pranks of 2014",
"v_id" : "A9w72vSuPAQ",
"views" : 0
},
{
"_id" : "8oK2JxqJfEkzceWHB",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "Friday The 13th Scare Prank",
"v_id" : "6m4isWlUlRE",
"views" : 0
},
{
"_id" : "5NwM2fbnifKejgSct",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "7 SUPER EASY PRANKS - HOW TO PRANK",
"v_id" : "RckNziU2JEk",
"views" : 0
},
{
"_id" : "x5QqJu2e54kjFpfkz",
"category" : "pranks",
"date" :new Date(),
"rate" : {
"up" : 0,
"down" : 0
},
"user" : "User_1",
"vTitle" : "Orphanage Robbery Prank!!",
"v_id" : "dBfVwjRuwxk",
"views" : 0
},
如果我有一个"_id":"3CvrFtYo4wWE5Co7",我如何获得下一个10&按日期从"_id"开始预览10个条目:"3CvrFtYo4wWE5Coj7"?
假设"_id"之前有500个条目:"3CvrFtYo4wWE5Coj7",之后有500个。
编辑:我所知道的只是iron:router参数"ID=this.params._ID"中的条目ID,然后我必须找到该条目,并获得"that entry+next 10"或"that entry+prev 10"。
当你得到一个随机的文档时,为什么不能查看它的日期,然后在MongoDB中查询下10个较老/较年轻的文档(取决于你想去哪个方向)?
Collection.find({$and[{date:{$gte:{mydocument.date}}},{_id:{$ne:mydocument._id}}]},{sort:{date:1}}).limit(10)
这意味着你订阅了你收藏的所有文档,当然,考虑到你收藏的规模,这可能不是最好的做法。相反,您可能希望将订阅/发布更改为仅发布您实际需要的文档。
您可以使用MongoDB跳过和限制。
// Set some default value for the session variables
Session.setDefault("limitCount",10);
Session.setDefault("skipCount",0);
// subscribe to the post in client-side using the session variables.
Tracker.autorun(function () {
Meteor.subscribe("posts", Session.get("limitCount"),Session.get("skipCount"));
});
// Publish using the limit and skip values.
Meteor.publish("posts",function (limitCount,skipCount) {
return Posts.find({user_id: this.userId},{
sort: {date: -1},
limit: limitCount,skip: skipCount
});
});
在模板事件中,可以增加Session变量值以获得所需的帖子数量。
相关文章:
- 我怎样才能重复显示接下来的15个项目
- 接下来选择与筛选器匹配的选项
- 如何jQuery-Add按钮最多插入10个新输入
- 正在加载+10个帖子
- 我在下拉列表中尝试了下一个和前五年的html代码.接下来的5年我都过得很好.我怎样才能拿到之前的5年
- 如何在输入文本字段中输入10个字符时自动提交表单
- 接下来 标记
- 骨干.js集合筛选前 10 个模型
- 如何调用日期函数并在接下来的 6 天插槽中显示
- 第二个引导程序导航栏链接打开第一个(错误的)导航栏;jquery
- 日期选择器如何跳过接下来的5天
- 使用jQuery在p-tag中查找给定字符串的前10个单词和下10个单词
- 一个链接打开两个窗口
- ajax请求每秒返回10个响应
- 在这种情况下,如何更改接下来3个兄弟姐妹的类别
- JavaScript 将类添加到接下来的 7 个元素中
- MeteorJS&MongoDB:如何获得接下来的10个条目
- 如何收集10个Google搜索结果链接(其中似乎删除了class属性)
- 单击一个元素后选择接下来的两个元素.(jquery)
- 在特定的两个数字之后得到接下来的6个任意数字