从循环中的 MongoDB collection 中选择单个 documents/objects?
Selecting individual documents/objects from MongoDB collection that's in a loop?
我不确定如何准确表达这个...但基本上在我的代码中,我使用 forEach
循环遍历 MongoDB collection 并显示 objects 在他们里面用 ejs 在 table。我想做到这一点,以便当用户单击其中一个 objects 时,它会将他们带到一个页面,其中仅包含他们 select 编辑的项目的详细信息,但不能这样做,因为他们是通过循环显示。
例如:
我的 collection,名为 stores
,有 objects,例如 environment
、store
和 version
。当我循环显示它们时,我是这样做的:
<table>
<tr>
<th>Environment</th>
<th>Store Name</th>
<th>Code Version</th>
</tr>
<% stores.forEach(function(store){ %>
<tr>
<td> <%= store.environment %> </td>
<td> <%= store.store %> </td>
<td> <%= store.version %> </td>
</tr>
<% }); %>
</table>
结果 table 看起来像这样:
Environment | Store Name | Code Version
-----------------------------------------
QA1 | Oakdale | 2019.09
QA2 | Westminster | 2020.03
QA3 | Garden Grove | 2020.05
我希望用户能够点击,例如,QA1
,它会将他们定向到另一个页面以获取有关 QA1 的详细信息。我的问题是,代码通过 <%= store.environment %>
显示为一组,如何在 JUST QA1 或 QA2 上创建 link?现在,如果我将 link 放在与 <%= store.environment %>
相同的 td
中,则 link 会出现在 environment
.
的每个实例中
是否有可能通过 jQuery 或其他方法到达 select 特定环境?
是的,你可以,你只需要检查 environment
属性,或者你用来定义的任何 属性 是否应该显示 link.
这里有一个简单的例子来说明如何做到这一点:
<table>
<tr>
<th>Environment</th>
<th>Store Name</th>
<th>Code Version</th>
</tr>
<% stores.forEach(function(store){ %>
<tr>
<td>
<% if (store.environment === "QA1") { %>
<a href="/your-url"><%= store.environment %></a>
<% } else { %>
<%= store.environment %>
<% } %>
</td>
<td> <%= store.store %> </td>
<td> <%= store.version %> </td>
</tr>
<% }); %>
</table>
对于任何代码错误,我深表歉意,我是直接从 Whosebug 做的。
我不确定如何准确表达这个...但基本上在我的代码中,我使用 forEach
循环遍历 MongoDB collection 并显示 objects 在他们里面用 ejs 在 table。我想做到这一点,以便当用户单击其中一个 objects 时,它会将他们带到一个页面,其中仅包含他们 select 编辑的项目的详细信息,但不能这样做,因为他们是通过循环显示。
例如:
我的 collection,名为 stores
,有 objects,例如 environment
、store
和 version
。当我循环显示它们时,我是这样做的:
<table>
<tr>
<th>Environment</th>
<th>Store Name</th>
<th>Code Version</th>
</tr>
<% stores.forEach(function(store){ %>
<tr>
<td> <%= store.environment %> </td>
<td> <%= store.store %> </td>
<td> <%= store.version %> </td>
</tr>
<% }); %>
</table>
结果 table 看起来像这样:
Environment | Store Name | Code Version
-----------------------------------------
QA1 | Oakdale | 2019.09
QA2 | Westminster | 2020.03
QA3 | Garden Grove | 2020.05
我希望用户能够点击,例如,QA1
,它会将他们定向到另一个页面以获取有关 QA1 的详细信息。我的问题是,代码通过 <%= store.environment %>
显示为一组,如何在 JUST QA1 或 QA2 上创建 link?现在,如果我将 link 放在与 <%= store.environment %>
相同的 td
中,则 link 会出现在 environment
.
是否有可能通过 jQuery 或其他方法到达 select 特定环境?
是的,你可以,你只需要检查 environment
属性,或者你用来定义的任何 属性 是否应该显示 link.
这里有一个简单的例子来说明如何做到这一点:
<table>
<tr>
<th>Environment</th>
<th>Store Name</th>
<th>Code Version</th>
</tr>
<% stores.forEach(function(store){ %>
<tr>
<td>
<% if (store.environment === "QA1") { %>
<a href="/your-url"><%= store.environment %></a>
<% } else { %>
<%= store.environment %>
<% } %>
</td>
<td> <%= store.store %> </td>
<td> <%= store.version %> </td>
</tr>
<% }); %>
</table>
对于任何代码错误,我深表歉意,我是直接从 Whosebug 做的。