-1
true/falseの値に基づいて、各フィールド(ssl、maint、seo)の合計のリストを取得しようとしています。私はそれが本当であるかどうかを知る必要があります(彼らはホスティング、またはmaint、またはseo)それぞれのために私の合計カウントを生成する必要があります。True/Falseの値に基づいてMongoose.jsの結果を集計する方法
ホストスキーマ:
var HostSchema = new Schema({
...
pkg: {
type: String,
required: [ true, 'Hosting Package is required' ]
},
ssl: { type: Boolean, required: true },
maint: { type: Boolean, required: true },
seo: { type: Boolean, required: true },
...
});
ここでは私の現在のコードは、(それは未完成です)です:
// Grab all hosts with yes values for
Hosts.aggregate(
[
{ $match: { 'ssl': true }},
{ $group: {
'ssl': '$ssl',
'count': {'$sum': 1}
}
}
], function(err, hosts) {
console.log(hosts);
console.log(err);
if (err) console.log(err);
// INCOMPLETE -- Waiting to see the object structure of the above results.
var totals;
hosts.forEach(function(item, index) {
if (item)
totals.push({})
});
return res.render('./dashboard/dashboard', {
totals: totals,
user: req.user});
});
});
ホストオブジェクト:
{ _id: 5a1f21d5bdaeb730da394900,
created_at: 2017-11-29T21:08:37.736Z,
updated_at: 2017-11-29T21:08:37.736Z,
domain: '1.com',
pkg: 'Not Hosted',
ssl: false,
maint: false,
seo: false,
__v: 0,
cms: [],
ftp: [] }
あなたは一つのオブジェクトを投稿することができますか? –
OK、ホストオブジェクトを表示するために私の投稿を編集しました –
Ohkだから、ssl値がtrueに等しいオブジェクトの総数です。私は正しい? –