仅显示最近的猫鼬时间戳?

时间:2020-05-05 18:20:06

标签: html node.js mongodb mongoose ejs

我有一个用MongoDB数据填充的HTML表。我使用猫鼬时间戳记来更新数据库条目时的日期和时间。

我只希望显示最近的日期/时间,而不是要更新的每个条目的日期/时间(由于forEach循环而正在发生)。

我对猫鼬不是很熟悉,所以我想知道是否有一种方法可以检查最新的<%= environment.updatedAt %>并只显示其中一个?

HTML:

<table>
   <% environments.forEach(function(environment){ %>

    <%= environment.updatedAt =>

     <tr>
         <td><%= environment.ePIMS %></td>
         <td><%= environment.codeVersion %></td>
         <td><%= environment.region %></td>
     </tr>

   <% }); %> 
 </table>

让我知道您是否想查看我的猫鼬模式或其他内容。谢谢!

1 个答案:

答案 0 :(得分:1)

如果要在表后显示最新的updateAt,请在循环期间将其分配给变量,然后再显示。假设updateAt是数字,则可能看起来像

<%= newest = Math.max(newest, environment.updatedAt) =>

如果您希望首先显示最新时间,或在每行中显示最新时间,一个选项是使用reduce来查找最新时间,例如

<%=  environments.reduce(function(a,v){return Math.max(a,v.updatedAt)},0) =>

或者您可以在检索数据时按updateAt: -1对查询进行排序,因此最新的是第一个元素。