对多个作用域使用多个参数的Sequelize不起作用



我正试图在查询模型中添加多个作用域和defaultScope。

var scopes = [
'defaultScope',
{ method: ['nearByProperty', { lat, lng }] },
{ method: ['priceRangeFilter', { min_price, max_price }] }, 
];
propertyModel = propertyModel.scope(scopes)

它似乎默认和最后一个都有效,但不是所有三个都有效。此外,如果单独运行但不能一起工作,则所有3个作用域都是可行的。

根据文档,它只显示了一个参数传递示例。

https://sequelize.org/master/manual/scopes.html#merging

如果我做错了什么,请帮帮我。

您的函数接受单个对象参数还是两个参数?

如果是两个,试着传播论点并按如下方式传递:

var scopes = [
'defaultScope',
{ method: ['nearByProperty',  lat, lng ] },
{ method: ['priceRangeFilter', min_price, max_price ] }
];

最新更新