首页 > 其他分享 >Sequelize排序问题: 关联其他表数据的排序实现

Sequelize排序问题: 关联其他表数据的排序实现

时间:2022-11-29 14:34:17浏览次数:48  
标签:table2 Sequelize 关联 asc model 排序 数据

问题描述:
有一对多或者多对多的关联表数据要一起提取返回前端时,在没有申明排序规则的情况下,关联的数据的顺序是随机的。在前端多次调用这类接口,会发现,页面展示的关联数据的位置总是动态变化的,对于对数据展示要前后一致的产品而言,这样的情况,是不被允许的。所以,要添加排序规则,以使关联的数据的展示,也是前后一致,而不是动态变化的。

解决方案:
针对上述问题,经过实践,整理最终的解决方案如下所示:

ctx.model.ModelTable1.findAll({
      include: [
        {
          model: ctx.model.ModelTable2,
          required: false,
          as: 'table2',
          include: [
            {
              model: ctx.model.ModelTable3,
              required: false,
              as: 'table3',
            },
          ],
        },
      ],
      // 重点是order中的配置
      order: [['sort', 'asc'], ['table2', 'sort', 'asc'], ['table2', 'table3', 'sort', 'asc']], 
    });

以上实例,一个数据库表嵌套了两层,当需要对每一层数据进行排序时,需要在order中,按照嵌套层次,依次进行配置。配置项主要分三部分,一表名(别名,顶层表可以忽略);二排序依赖的字段,一般是id,或者创建修改时间,或者特定的排序字段; 三排序规则,asc: 由小到大,desc,由大到小;

标签:table2,Sequelize,关联,asc,model,排序,数据
From: https://www.cnblogs.com/zzsdream/p/16935323.html

相关文章

  • 排序实练(1):列表排序-插入法及排序基础认知
    1.1插入法排序:有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——​​插入排序法​......
  • 排序实练(2):列表排序-冒泡法/选择排序/快速排序
    ​​排序算法有很多,包括​​​​插入排序​​​,​​堆排序​​​,​​归并排序​​​,​​选择排序​​​,​​计数排序​​​,​​基数排序​​​,​​桶排序​​​,​​快速排序......
  • acwing113. 特殊排序
    记录交互题这个东西 classSolution{public:vector<int>specialSort(intN){vector<int>res;res.push_back(1);for(inti=2;i<......
  • Django-2.5关联-笔记
    模型类关系关系字段类型关系型数据库的关系包括三种类型:ForeignKey:一对多,将字段定义在多的一端中。ManyToManyField:多对多,将字段定义在任意一端中。OneToOneField:一对一,将字......
  • 5.2.5 快速排序——代码解说
    需思考一个巧妙的办法,在这个数组里头,原地进行这个数组元素倒换,实现参照元素在它该到达的位置去存放,左边的元素都比它小,右边的元素都比它大,不分配动态数组。保证整体左边小,......
  • 5.2.1 归并排序——总体思路
    折半查找快速是因为每次只查一半,另一半不管把一个任务拆成两个部分只完成其中一部分,是一个很有效的办法当元素多了,运算、时间消耗等会比较复杂数组前一半让它有序,后一半......
  • 新建项目关联远程仓库
    通过vuecli3创建项目vuecreatemall 新建远程仓库     终端中执行命令[email protected]:xxx/mall.gitgitpush-uoriginm......
  • 与堆和堆排序相关的问题
    与堆和堆排序相关的问题作者:Grey原文地址:博客园:与堆和堆排序相关的问题CSDN:与堆和堆排序相关的问题堆结构说明堆结构就是用数组实现的完全二叉树结构,什么是完全二叉......
  • PTA 21级数据结构与算法实验8—排序
    目录7-1统计工龄7-2寻找大富翁7-3点赞狂魔7-4插入排序还是归并排序7-5插入排序还是堆排序7-6逆序对7-7堆排序7-8石子合并7-9第k小7-10快速排序的过程7-1统计工......
  • DataGridView绑定BindingList 中的 DataGridViewCheckBoxColumn 无法点击排序问题
    参考文档DataGridView绑定BindingList<T>带数据排序的类-腾讯云开发者社区-腾讯云(tencent.com) DataGridView使用技巧十三:点击列头实现升序和降序排序-.NET开发......