【发布时间】:2018-11-05 04:36:06
【问题描述】:
这是我的设计。
https://i.stack.imgur.com/AmP24.png
在获取请求时,我从 MongoDB 数据库中获取数据并呈现视图。现在我想根据表单上的用户输入过滤数据。
最好的方法是什么?
这是 ejs 模板:
<div class="row">
<% events.forEach((event) => { %>
<div class="col-lg-6 g-mb-30">
<!-- Event Listing -->
<span class="badge g-font-size-13"><%-event.type%></span>
<article class="u-shadow-v39">
<div class="row">
<div class="media-body g-pt-40 col-4 text-center g-bg-main">
<span class="g-color-orange g-font-weight-500 g-font-size-40 g-line-height-0_7"><%-event.date.getMonth()%></span>
<span class="g-line-height-0_7 g-color-white"><%-monthNames[event.date.getMonth()]%></span>
<span class="g-color-orange g-ml-5 g-font-weight-500 g-font-size-40 g-line-height-0_7"><%-event.date.getFullYear()%></span>
</div>
<div class=" col-8 g-mb-5 g-mt-10 ">
<% event.topics.forEach((topic) => { %>
<%if(event.topics.length==1){%>
<h3 class=" text-center g-pt-35 g-mb-0 u-link-v5 g-color-orange g-color-primary--hover g-font-size-18 g-pr-10">
<% }else{%>
<h3 class=" text-center g-mb-0 u-link-v5 g-color-orange g-color-primary--hover g-font-size-18 g-pr-10">
<% }%>
<%-topic.topic%> </h3>
<div class=" text-center u-link-v5 g-color-main g-color-primary--hover g-font-size-18 g-mb-5"><i class="icon-education-097 g-pr-5"></i> <%-topic.time%></div>
<% })%>
<h3 class=" text-left g-pb-10 g-mb-0 u-link-v5 g-color-purple g-color-primary--hover g-font-size-18 g-pr-10"><i class="icon-travel-078 g-pr-5"></i> <%-event.location%></h3>
</div>
</div>
</article>
</div>
<% }) %>
</div>
这是获取请求
//events
function getEvents(req,res,next){
mongo.find('events','',function(err,res){
if(!err){
req.events=res;
return next();
}
})
}
function renderEvents(req,res){
res.render('layouts/events',{events:req.events,
monthNames : ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"]});
}
app.get('/events',getEvents,renderEvents);
【问题讨论】:
标签: javascript json node.js express ejs