我想在mongo集合中找到特定字段fieldName
的最大值。
为此,我创建了一个帮助器largestValue
:
UI.registerHelper('largestValue', function(fieldName) {
return Collection.findOne({fieldName: {$exists: true}}, {sort: {fieldName: -1}}).value;
但是,这总是以未定义的形式返回。如果我在return语句中使用实际的字段名称而不是fieldName
参数,则会返回一个文档。
如何为此目的使用参数?
该功能在HTML中调用,如下所示:largest value of X: {{largestValue 'X'}}
。
答案 0 :(得分:1)
{fieldName: -1}
将使用存储值fieldName
的键-1
创建一个对象。要实现您的目标,您需要创建一个变量并使用方括号语法:
var object = {}
object[fieldName] = -1
然后使用object
代替{fieldName: -1}
。因此,以下内容适用于您的情况:
UI.registerHelper('largestValue', function(fieldName) {
var where = {}
where[fieldName] = {$exists: true}
var sort = {}
sort[fieldName] = -1
return Collection.findOne(where, {sort: sort}).value;
})