Meteor:如何根据搜索查询调整铁路由器返回数据?

时间:2014-09-19 16:55:06

标签: meteor

我有一个用户可以记笔记的应用程序。

在html页面中,我迭代每个音符,如下所示:

<div id="notes-container" class="notes">
  {{each notes}}
    {{> note}} 
  {{/each}}
</div>

在我的路由器文件中,我返回如下数据:

@route: 'notes'.
  path: '/notes/:_id',
  data: ->
      notes = Notes.find
          threadId: @params._id
          trash:
            $exists: false
        ,
          sort: 
            date: -1

到目前为止,所有这些都是典型的流星。但我现在很困惑如何调整html页面中迭代的数据。

每个音符都有一个标签的数组字段,如标签:[&#39; apple&#39; ,&#39;红色&#39;绿色&#39;]

如果用户想要返回带有标记“红色”的所有笔记,该怎么办?因此,站点上有一个输入框,用户输入标签并按下回车键。

如何调整发送到页面的数据,以便查询mongodb以返回标记为红色的所有笔记?我知道如何编写查询我不知道如何在流星中设置它。

我尝试这样做的一种方法是使用查询参数调用相同的路径:&#39; / notes / 326363235474?tags = apple&#39;

在铁路由器中,我可以查找查询参数并返回正确的文档集,但是当我再次调用原始路径以清除搜索时,它不会再次加载所有原始文档。

关于我如何设置它的任何建议?感谢

1 个答案:

答案 0 :(得分:0)

如果我将此函数定义为某个路径,则数据函数只需返回模板上下文中可用的数据:

 data: ->
        return Drawing.findOne
            _id: window._drawing_id

我将在我的&#34;这个&#34;处理该模板时的对象。