是否可以为续集模型定义默认的排序顺序

时间:2019-01-09 20:06:18

标签: sequelize.js

我正在寻找一种方法来定义模型的默认排序顺序,以使记录始终按字母顺序返回给定字段,例如-类似于具有“名称”字段的用户模型,我希望在执行User.findAll()时默认情况下按字母顺序对用户进行排序。

关于不是如何在findAll选项中定义排序顺序的问题不是 ,我已经知道该怎么做:

User.findAll({ order: [['name', 'ASC']] })

我想要类似rails的默认排序顺序:

class User < ActiveRecord::Base
  default_scope { order(name: :desc) }
end

我不得不承认,我没有详细阅读续集文档,我现在正在做,但是如果有人可以同时指出它的话

1 个答案:

答案 0 :(得分:2)

TL; DR

可以将默认范围应用于模型,如下所示:

MyGreatModel.addScope('defaultScope', {
  order: [['id', 'ASC']],
}, { override: true })

我已经找到2个非常有用的资源来回答我的问题,首先,the sequelize docs about scopes 我知道可以从this github issue

的答案中寻找答案