0
假設的順序檢索對象:Mongoid:在
提到= [ 「2」, 「1」, 「3」]
未排序= User.where(:nickname.in = >提及).MAP
的輸出不提供的數組中的排序匹配
輸出是隨機=> 3,1,2
我希望它按照原數組=> 2,1,3
假設的順序檢索對象:Mongoid:在
提到= [ 「2」, 「1」, 「3」]
未排序= User.where(:nickname.in = >提及).MAP
的輸出不提供的數組中的排序匹配
輸出是隨機=> 3,1,2
我希望它按照原數組=> 2,1,3
我有同樣的問題,我解決這樣的:
mentions=["foo","bar","baz"]
ranked = User.where(:nickname.in => mentions).sort do |a, b|
mentions.index(a.nickname) <=> mentions.index(b.nickname)
end
不是真的,因爲最好的解決方法我排序在應用程序,而不是數據庫引擎,但嘿..它的作品(在小名單)。