我如何要求MongoDB评估一些JavaScript以获得字段的价值?

我想让MongoDB动态为我要插入的文档的字段之一分配一个值。例如:MongoDB服务器的当前时间就像MySQL中的NOW()一样。


我尝试了这个:


c := mongoSession.DB("myapp").C("instances")

rand.Seed(time.Now().UnixNano())

err := c.Insert(

   struct{Serial, Priority, Url, LastSeen interface{}}{ 

      Url: getInformedHost() + ":" + getRunningPortString(), 

      Priority: rand.Int(), 

      LastSeen: mongoNow() }

)

checkError(err, "Could not register on MongoDB server.", 3)

我有这个辅助功能:


func mongoNow() bson.JavaScript {

    return bson.JavaScript{Code: 

         "(new Date()).ISODate('YYYY-MM-DD hh:mm:ss')"}

}

LastSeen字段被存储为脚本而不是被评估:


[_id] => MongoId Object (

    [$id] => 502d6f984eaead30a134fa10

)

[priority] => 1694546828

[url] => 127.0.0.1:8080

[lastseen] => MongoCode Object (

    [code] => (new Date()).ISODate('YYYY-MM-DD hh:mm:ss')

    [scope] => Array (

    )

)

我如何获得一些javascript评估而不是插入?


沧海一幻觉
浏览 153回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go