CracKerMe / blog

blog site
MIT License
1 stars 0 forks source link

通过ISSUES 生成博客文章 #1

Open CracKerMe opened 2 years ago

CracKerMe commented 2 years ago

[intro]: 我是博客简介 真的不容易啊

通过ISSUES 生成博客文章

我是H2 标题啊

3.2.2 路由文件详细说明 打开app/blog/controller/dashboard/post.js文件:

/.../ exports.list = function* () { // 绑定默认控制器 yield this.bindDefault(); // 独立权限控制 if (!userAuthor.checkAuth(this, this.userInfo)) {return};

// 获取请求query参数 let pageNum = this.query.page; // 获取数据 let PostModel = this.mongo('Post'); let posts = yield PostModel.page(pageNum,20); let page = yield PostModel.count(pageNum,20);

// 渲染模板 yield this.render('dashboard/post_list',{ breads : ['文章管理','文章列表'], posts:posts, page:page, userInfo: this.userInfo, siteInfo: this.siteInfo }) } exports.list.method = 'get'; exports.list.regular = null; /.../ 对,就是你猜的那样:koa-grace-router是通过post.js的module.exports进行下一步的路由控制。

另外,需要说明以下几点:

如果需要配置dashboard/post/list请求为DELETE方法,则post.js中声明 exports.list.method = 'delete'即可(不声明默认会注入get及post请求),更多方法类型请参看:koa-router#routergetputpostpatchdelete--router; 如果要进一步配置dashboard/post/list/id路由,则在post.js中声明exports.list.regular = '/:id';即可,更多相关配置请参看:koa-router#named-routes 如果当前文件路由就是一个独立的控制器,则module.exports返回一个yield方法即可,可以参考案例blog中的controll/home.js 如果当前文件仅仅是一个依赖,仅仅被其他文件引用;则在文件中配置exports.controller = false,该文件就不会生成路由了 当然,如果一个路由文件中的控制器方法都是delete方法,您可以在控制器文件最底部加入:module.exports.method = 'delete'即可。regular的配置同理。

CracKerMe commented 2 years ago

这里是 评论啊