我正在寻找一种方法来为 sequelize 中的模型定义默认排序顺序,以便记录始终按给定字段的字母顺序排序,例如 - 类似于具有“名称”字段的用户模型,当我执行 User.findAll()
时,我希望用户默认按字母顺序排序。
这个问题不是关于如何在 findAll
选项中定义排序顺序的问题,我已经知道该怎么做:
User.findAll({ order: [['name', 'ASC']] })
我想要类似 Rails 默认排序顺序的东西:
class User < ActiveRecord::Base
default_scope { order(name: :desc) }
end
我不得不承认,我还没有详细阅读我现在正在做的 sequelize 文档,但是如果有人能同时指出它的话
最佳答案
长话短说
可以将默认作用域应用于模型,大致如下:
MyGreatModel.addScope('defaultScope', {
order: [['id', 'ASC']],
}, { override: true })
我找到了 2 个非常有用的资源来回答我的问题,首先,the sequelize docs about scopes 我知道要从 this github issue 上的答案中寻找这个
关于sequelize.js - 是否可以为 Sequelize 模型定义默认排序顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54117521/