はい。以前、レールコンソールでそれらをアルファベット順に並べ替えるコードを書いたと思いますが、手元にはありません。
おそらく、https://ask.discourse.com/ やその他のAIに、それを実行するためのコードを提供してもらうことができるでしょう。 。 。 。まあ、私はできませんでした。
これは機能するかもしれませんが、試していません。
cats = Category.where("parent_category_id is not null").pluck(:parent_category_id).uniq
cats.each do |cat|
subs = Category.where(parent_category_id: cat.id)
subs_sorted = subs.sort_by { |c| c.name.downcase }
pos = 10
subs_sorted.each do |sub|
sub.update(position: pos)
pos += 10
end
end