我的流星网站上有这个页面:twbrewing.com/blog我想按日期对博客文章进行排序。
如果我在控制台中执行以下操作:
BlogPosts.find({}, {sort: {date: -1, time: -1}})
它以错误的顺序返回帖子。这也是帖子显示顺序不正确的原因。
集合中返回的第一个doc的日期是:
date: "2013-12-16"
而第二篇文章的日期是:
date: "2014-01-02"
我相信这是正确的ISO 8601格式,所以我不确定它失败的原因。
我从服务器发布:
Meteor.publish 'blogPosts', () ->
BlogPosts.find({}, {sort: {date: -1, time: -1}})
订阅铁路由器数据方法:
# Blog
@route 'blog',
path: '/blog/'
waitOn: ->
Meteor.subscribe 'blogPosts'
data: ->
blogPosts: BlogPosts.find({}, {sort: {date: -1, time: -1}})
答案 0 :(得分:5)
也许您错过了sort
说明符?
BlogPosts.find({}, {sort: {date: -1, time: -1}})
答案 1 :(得分:2)
我希望我可以将这篇文章的标题更改为“关于游标和未复制排序失败的noob问题”。
我的博客帖子输入错误,但这是代码错误:
BlogPosts.find({}, {date: -1, time: -1})
而不是:
BlogPosts.find({},sort:{ {date: -1, time: -1}})
然后在修复代码之后,重新部署表明问题本身没有解决。我试图在控制台中调试我误解了游标应该如何返回...例如作为一个新手,他们应该返回无序是一个惊喜(我不理解DDP和/或mongo足够......虽然我不记得在Meteor中看过它或我读过的mongo文档)
数据库重置和第二次重新部署修复了一直存在的问题。所以我想我会为用户提供错误。