首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MongoDB中使用DerbyJS导入的文档

在MongoDB中使用DerbyJS导入的文档
EN

Stack Overflow用户
提问于 2012-04-30 06:14:18
回答 2查看 502关注 0票数 2

我有一个MongoDB集合,其中的数据不是通过我的Derby应用程序保存的。我想对此进行查询,并将其放到我的Derby应用程序中。

所以,我想出了答案,下面是代码:

代码语言:javascript
复制
get '/:year', (page, model, params) ->
  query = model.query 'years', 
    where:
      year: (parseInt params.year, 10)
    limit: 1
  model.subscribe query, (err, year) ->
    if err
      console.log err

    page.render
      y: year.get(),
      year: params.year

唯一的问题是文档没有derby id,因此它将MongoDB objectid (_id)设置为derby id。下面是model.get()返回的JSON示例:https://gist.github.com/0a5426d2b28a940e8803

在查询之前,我无法知道对象是什么。我希望最近返回的id (currID)位于对象的顶层,这样我就可以查询并设置模型引用。我做了一个黑客来绕过它,但它并不像我希望的那样顺利。守则如下:

代码语言:javascript
复制
getId = (obj, year) ->
  for x of obj
    return obj[x].id if obj[x].year is year
  -1

另外,是否有任何方法可以更新模板而不破坏屏幕上的一些模板?而不是做一个完整的page.render,只做一个template.render

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-28 00:52:51

Racer查询在0.3.11中刚刚更新,并在这个自述文件中进行了描述:https://github.com/codeparty/racer/blob/master/lib/descriptor/query/README.md

票数 3
EN

Stack Overflow用户

发布于 2012-05-01 07:24:28

注意:这已经不再需要了。查询系统已经更新。请看内特的答案。

我和DerbyJS的开发人员进行了交谈,他告诉我他们正在改进查询系统。这项工作仍在进行中。

现在,我已经构建了一个黑客,它将使用一个对象进行测试,并使用一个参数对象

代码语言:javascript
复制
getId = (obj, params) ->
  ids = []
  for x of obj
    i = 0
    for y of params
      if obj[x][y] isnt params[y]
        break
      else if (++i is params.length)
        ids.push
          id: obj[x].id
  return ids

例如,您可以输入这样的对象:

代码语言:javascript
复制
var obj = {
  "lskjfalksj23423": {
    id: "lskjfalksj23423",
    name: "random day",
    year: 2012,
    month: 12,
    day: 1
  },
  "aklsdjflkasdfd": {
    id: "aklsdjflkasdfd",
    name: "random day 2",
    year: 2012,
    month: 8,
    day: 1
  }
}

然后是一个要对其进行测试的对象(确保添加一个长度键)

代码语言:javascript
复制
var params = {
  month: 12,
  day: 1,
  length: 2
}

它将返回匹配it的数组:[{id: "lskjfalksj23423"}]

注意:我还没有测试过这个例子,所以如果你有问题,请告诉我。当查询系统进一步构建时,这应该在几个月内就过时了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10379276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档