如何系统地为Meteor中的新文档添加时间戳?

时间:2013-05-04 21:10:57

标签: meteor

将新文档插入集合时,我想为其添加时间戳。我希望服务器执行此操作,而不是客户端。这里最好的解决方案是什么?

Rem:我不想为此实现自己的自定义Meteor.methods(),而是使用经典的Meteor.Collection.insert()方法

3 个答案:

答案 0 :(得分:7)

从这里开始 - https://github.com/oortcloud/unofficial-meteor-faq

  

块引用

     

如何在将每个文档添加到数据库之前对其进行更改?

     
    

现在不支持此功能,但您可以使用拒绝功能来实现服务器上的功能。例如,为每个时间戳     文件进入mongo:

  
Posts.deny({
  insert: function(userId, doc) {   
   doc.createdAt = new Date().valueOf();   
   return false; 
}}) 

```

答案 1 :(得分:1)

与Nate一样,添加我使用的时间戳:

new Date().valueOf()

并将其附加到点击事件,如下所示:

"click #messageSubmit": function (evt, templ) {

  var message = templ.find('#messageText').value;

  Messages.insert({
    message: message,
    createdAt: new Date().valueOf()
  });
}

答案 2 :(得分:0)

我会使用Date.now()。它看起来更干净,并返回与new Date().getTime()相同的值。

new Date().getTime() === Date.now() // true