(rails7)並び替え機能acts_as_listでカラム名変更

Rails・Webシステム開発
Anja🤗#helpinghands #solidarity#stays healthy🙏によるPixabayからの画像
スポンサーリンク

順番を制御してくれる便利なgem「acts_as_list」

positionというカラムを追加することで、そこに連番が入り、簡単に並び替え機能を実装できるメソッドを提供してくれます。

positionが追加できるなら、デフォルトにしたがってそうする方が良いですが、既存システムに後から追加する場合などは、変更することが可能です!



カラム名を変更する方法(端的に結論を)

結論、modelでcolumnオプションを使えばOK!

例えば、usersテーブルのsort_orderカラムに順番を入れたい場合は、下記のように記述します。

class User < ApplicationRecord
  belongs_to :group
  acts_as_list scope: :group, column: :sort_order
end

これで、上記の例で言えばsort_orderカラムがpositionカラムの代わりになります。

参考

↓このサイトで知りました。ありがとう!

AR acts_as_list のオプション

使い方はこちらが親切↓

【Rails】acts_as_listを使った並べ替え機能を同期/非同期それぞれで実装

公式↓

git

公式の日本語訳↓

【40】【Rails】Acts As List公式ドキュメントの翻訳記事

はるすと
はるすと

最後まで読んでくださってありがとうございました!

この記事を書いた人
こもれびエンジニア

自然と自由を愛するエンジニア。2021年1月に、大手製造業設計からプログラマ(Rails, AWS)へ転職。動物や自然との触れ合いや、汗を流すのが好き。

/HSP(繊細さん)/18デリケートな象/ストレングスファインダー(1分析思考/2親密性/3学習欲/4調和性/5収集心)、テニス、合気道、登山、あいだみつを、ジブリ、ワンピース、ドラゴンボール、AWS、Ruby on Rails、アイミング

twitterをフォローして、記事にならないちょっとした豆知識もチェック!
Rails・Webシステム開発
スポンサーリンク
SNSでシェア/コメントして、自分のアウトプット/発信力を高めるのにお使いください。 ↓ 各ページへジャンプ ↓
twitterをフォローして、記事にならないちょっとした豆知識もチェック!
スポンサーリンク
「そんなか」サイト

コメント

タイトルとURLをコピーしました