gpt4 book ai didi

sorting - mongoid排序问题

转载 作者:行者123 更新时间:2023-12-02 13:01:33 24 4
gpt4 key购买 nike

我一直在使用 mongoid 来存储数据。我有一个场景,我必须根据 parent 的受抚养人数量对 parent 进行排序。我的模型很简单:

父模型references_many dependents stored_as => array
依赖模型reference_many parent stored_as =>数组

我不想遍历 parent ,找到受抚养人的数量,将它们存储在数组中并将它们转储到我的 View 中。

我需要的是只需一个查询即可根据受抚养人的数量对 parent 进行排序。这可能吗?

谢谢。

最佳答案

您必须添加一个包含家属人数的字段,并通过回调使其保持最新状态。像这样的东西:

class MyModel
include Mongoid::Document

references_many :things
field :thing_count, :type => Integer

before_update :set_thing_count
def set_thing_count
self.thing_count = self.things.count
end
end

那么你的排序就是:

MyModel.asc(:thing_count)

Mongoid 还没有提供良好的排序查询机制,但是添加非规范化计数字段非常容易,并且可能对性能更好。希望这有帮助!

关于sorting - mongoid排序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4345070/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com