我是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”。那么你怎么做呢?
2条答案
按热度按时间drkbr07n1#
Mongodb不会自动插入除'_id'字段之外的任何内容。您可以从'_id'字段中获得插入时间,如下所示-
ObjectId("507c7f79bcf86cd7994f6c0e").getTimestamp()
结果看起来像这样-
ISODate("2012-10-15T21:26:17Z")
个如果您想自己插入created_on字段,则-
1.如果你在mongo shell上,那么new Date()会插入当前时间。
db.mycollection.insert({ 'created_on' : new Date() })
1.如果您想使用原始PHP,那么-
$collection->save(array("created_on" => new MongoDate()));
希望这对你有帮助:-)
hmmo2u0o2#
这对我很有效: