2010-06-09 58 views
8

我正在使用CouchDB实现消息应用程序。我想将时间戳应用于每封邮件。我发现一些参考文献指出我应该使用document update handlers。就地更新看起来是正确的。但是我会在哪里获得时间戳?它在某个地方是否需要req对象?CouchDb自动时间戳

{ 
    updates: { 
    "in-place" : function(doc, req) { 
     doc.timestamp = "???"; 
     var message = "set timestamp to "+doc.timestamp; 
     return [doc, message]; 
    } 
    } 
} 
+0

http://stackoverflow.com/questions/4812235/whats-the-best-way-to-store-datetimes-timestamps-in-couchdb – abernier 2012-11-11 15:05:13

回答

7

答案是使用javascript的日期函数。

{ 
    updates: { 
    "in-place" : function(doc, req) { 
     doc.timestamp = new Date().getTime(); 
     var message = "set timestamp to "+doc.timestamp; 
     return [doc, message]; 
    } 
    } 
} 

不幸的是,得到这个更新从jcouchdb触发是下一个问题。

+0

你是什么意思“得到这个更新触发是下一个问题” :你的意思是一旦更新处理程序写入,问题是如何在文档更新后“自动”触发它? – abernier 2014-06-15 02:28:08