【lin-cms-koa 后端】学习的第二天

大家好呀 !上次我们知道了如何进行数据的新增 !那么 对应数据的查询该如何处理呢? 别急 我们现在来一步一步来学习。

  1. api 新增 get请求
	import { LinRouter } from 'lin-mizar';
    import { ContentValidator } from '../../validator/content';
    import { contentService } from '../../service/content';
    const ContentApi = new LinRouter({
               prefix: '/v1/Content'
        });
	ContentApi.get('/', async ctx => {
  // 看情况是否进行校验 ,我们get没有传递参数  ,所以不进行校验
      // 1. 调用服务层
            const res = await contentService.getcontent();
            ctx.json(res);
        // 2.返回数据
});
	module.exports = { ContentApi };

2.新增请求后 我们需要对应service 层 ,在以前的service 层增加一个方法

		 // 查询数据方法
  static async getcontent () {
    // 调用  dao层
    const musiclist = await MusicDao.getList();
    const movielist = await MovieDao.getList();
    const sentencelist = await SentenceDao.getList();

    // 我们需要将数据整合一下
    let res = [];
    res.push(...musiclist, ...movielist, ...sentencelist);  //展开
      //按照时间排序处理  返回1 升序 返回-1 放后面 代表降序 
      res.sort((a,b)=>{
		if(a>b){
		return   1
		}
		if(a<b){
		return  -1
		}
		return   0
   })  
    // 返回结果
    return res;
  }

3.增加对应的dao层 ,在亦有的类中增加一个方法

	 // 查询数据
  static async getList () {
    const res = await MusicModel.findAll();  //调用模型的findall方法  返回全部数据
    return res;
  }

。。。调用接口发现 时间格式不正确 我们需要配置一下sequelize ,实例会帮我们格式化时间

{
	  dialectOptions: {       // 这个配置帮助我们格式化时间
            dateStrings: true,
            typeCast: true
        },
        pool: {                  //链接池配置
            max: 5,
            min: 0,
            acquire: 30000,
            idle: 10000
        },
        timezone: '+08:00' //改为标准时区
}

现在调用接口试试吧!
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值