我是 mongoDB 的新手。我有以下代码创建集合和文档但是没有时间戳字段。有没有办法在文档中自动插入 created_on
。
db.createCollection("countries"); //Created collection
db.countries.insert({"short_name":"AF","country_name":"Afganistan"}); //Created document
db.countries.find()
{ "_id" : ObjectId("53d1d5bcb8173a625961ff34"), "short_name" : "AF", "country_name" : "Afganistan" }
我真正想要的是使用 Cake PHP 为我的文档分配一个默认的“created_on”。那你是怎么做到的呢?
最佳答案
Mongodb 不会自动插入除 '_id' 字段之外的任何内容。您可以像这样从“_id”字段中获取插入时间 -
ObjectId("507c7f79bcf86cd7994f6c0e").getTimestamp()
结果看起来像这样 -
ISODate("2012-10-15T21:26:17Z")
如果你想自己插入 created_on 字段,那么 -
如果你在 mongo shell 上,那么 new Date() 会插入当前时间。
db.mycollection.insert({ 'created_on' : new Date() })
如果你想使用原始 PHP,那么 -
$collection->save(array("created_on"=> new MongoDate()));
希望这会有所帮助:-)
关于mongodb - 如何存储时间戳? CreatedOn 是否有自动字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24947944/