文章修改后返回到当前分页
middleware
app/middleware/adminauth.js
获取上一页的url
ctx.state.prevPage = ctx.request.headers['referer']; //获取上一页的url
view
app/view/admin/nav/edit.html
在edit的from中把上一页的url提交给后台
<input type="hidden" name="prevPage" value="<%= prevPage %>">
controller
app/controller/admin/nav.js
async doEdit() {
var _id=this.ctx.request.body._id;
var prevPage = this.ctx.request.body.prevPage;
await this.ctx.model.Nav.updateOne({"_id":_id},this.ctx.request.body)
await this.success(prevPage,'编辑导航成功');
}
效果
模糊搜索
view
app/view/admin/goods/index.html
<form role="form" class="form-inline" method="get" action="/admin/goods">
<div class="form-group">
<label for="name">输入关键词</label>
<input type="text" class="form-control" value="<%=keyword%>" id="name" name="keyword" placeholder="请输入名称">
</div>
<div class="form-group">
<button type="submit" class="btn btn-default">开始搜索</button>
</div>
</form>
controller
app/controller/admin/goods.js
async index() {
var page=this.ctx.request.query.page || 1;
var keyword=this.ctx.request.query.keyword;
//注意
var json={};
if(keyword){
json=Object.assign({"title":{$regex:new RegExp(keyword)}});
}
var pageSize=3;
//获取当前数据表的总数量
var totalNum=await this.ctx.model.Goods.find(json).count();
var goodsResult=await this.ctx.model.Goods.find(json).skip((page-1)*pageSize).limit(pageSize);
await this.ctx.render('admin/goods/index',{
list:goodsResult,
totalPages:Math.ceil(totalNum/pageSize),
page:page,
keyword:keyword
});
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。