我正在尝试通过在属性上使用减号来对猫鼬进行排序,如果我直接在属性上进行操作,这似乎很好(双向)。 所以这样的事情对我有用:
.sort({ name: -1 })
这也有效
.sort({ '-name': -1 })
但是当我尝试基于子属性进行排序时,它只能以一种方式工作,
{ 'payment.cash.budget': -1 }
上面的查询工作正常。 但是以下操作无效:
{ '-payment.cash.budget': -1 }
猫鼬表现出这种行为的原因有哪些? 我不能(轻松)使用“ 1”而不是“ -1”,因为查询来自前端。
答案 0 :(得分:1)
在对猫鼬排序使用带有属性名称的减号时,您只需传递字符串本身,而不是对象:
.sort('payment.cash.budget') // Ascending
.sort('-payment.cash.budget') // Descending