我有一个 MongoDB 集合,其中包含未通过我的 Derby 应用程序保存的数据。我想对此进行查询并将其拉入我的 Derby 应用程序。
所以,我想通了,这是执行此操作的代码:
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
我无法知道查询之前的 objectid 是什么。如果最近返回的 id ( currID
) 位于对象的顶层,我会很高兴,这样我就可以查询它并设置模型引用。我现在构建了一个 hack 来绕过它,但它并不像我希望的那样顺利。代码如下:
getId = (obj, year) ->
for x of obj
return obj[x].id if obj[x].year is year
-1
另外,有什么方法可以更新模板而不破坏屏幕上已经存在的一些模板?而不是做一个完整的page.render
只是做一个template.render
?
谢谢