使用变量在mongodb的javascript函数中更新文档

使用变量在mongodb的javascript函数中更新文档,mongodb,mongodb-query,Mongodb,Mongodb Query,当我使用这个函数时,mongodb将使用'hour'和'minute'参数,如 字符串名称,将不使用其值。。。 你能帮助我吗? 谢谢 使用创建一个包含关键点的对象,如以下示例所示: db.system.js.save( { "_id": "inc_visitors_statistics", "value": function(siteId) { var now = new Date(), hour = now.getHours(),

当我使用这个函数时,mongodb将使用'hour'和'minute'参数,如 字符串名称,将不使用其值。。。 你能帮助我吗? 谢谢


使用创建一个包含关键点的对象,如以下示例所示:

db.system.js.save(
{
    "_id": "inc_visitors_statistics",
    "value": function(siteId) {

        var now = new Date(),
            hour  = now.getHours(),
            minute = now.getMinutes(),
            incObj = {};

        incObj[hour.toString()] = 1;
        incObj[minute.toString()] = 1;

        db.visitors_daily_statistics.update(
            { "siteId": siteId },
            { "$inc": incObj },
            { "upsert": true }
        );

    } 
})
db.loadServerScripts();
inc_visitors_statistics("foo");
在mongo shell中,您可以使用加载保存在当前数据库的
system.js
集合中的所有脚本,并在shell中直接调用上述函数,如下例所示:

db.system.js.save(
{
    "_id": "inc_visitors_statistics",
    "value": function(siteId) {

        var now = new Date(),
            hour  = now.getHours(),
            minute = now.getMinutes(),
            incObj = {};

        incObj[hour.toString()] = 1;
        incObj[minute.toString()] = 1;

        db.visitors_daily_statistics.update(
            { "siteId": siteId },
            { "$inc": incObj },
            { "upsert": true }
        );

    } 
})
db.loadServerScripts();
inc_visitors_statistics("foo");

使用创建一个包含关键点的对象,如以下示例所示:

db.system.js.save(
{
    "_id": "inc_visitors_statistics",
    "value": function(siteId) {

        var now = new Date(),
            hour  = now.getHours(),
            minute = now.getMinutes(),
            incObj = {};

        incObj[hour.toString()] = 1;
        incObj[minute.toString()] = 1;

        db.visitors_daily_statistics.update(
            { "siteId": siteId },
            { "$inc": incObj },
            { "upsert": true }
        );

    } 
})
db.loadServerScripts();
inc_visitors_statistics("foo");
在mongo shell中,您可以使用加载保存在当前数据库的
system.js
集合中的所有脚本,并在shell中直接调用上述函数,如下例所示:

db.system.js.save(
{
    "_id": "inc_visitors_statistics",
    "value": function(siteId) {

        var now = new Date(),
            hour  = now.getHours(),
            minute = now.getMinutes(),
            incObj = {};

        incObj[hour.toString()] = 1;
        incObj[minute.toString()] = 1;

        db.visitors_daily_statistics.update(
            { "siteId": siteId },
            { "$inc": incObj },
            { "upsert": true }
        );

    } 
})
db.loadServerScripts();
inc_visitors_statistics("foo");

非常感谢你的帮助@sav931无忧,乐于助人!非常感谢你的帮助@sav931无忧,乐于助人!