}
async tag(ctx, next) {
let currentPage = ctx.params.page || 1;
let pagesize = 12;
let params = ctx.params;
const contentModel = dan.DB('content');
const tagModel = dan.DB('tag');
let tag = await tagModel.findOne({ name: decodeURIComponent(params.name) }).lean();
if (dan.isEmpty(tag)) {
return ctx.throw(404);
}
let pageFor = '/article/tag/' + params.name + '/';
let list = await contentModel.listContent({
status: 1,
page: currentPage,
pageSize: pagesize,
tags: [tag.name]
});
let pageData = this.pagination(list);
Object.assign(ctx.state, {