🐒
Rails default_scopeについて(自己学習記録)
default_scopeとは
ModelのsuperclassdであるActiveRecordのクラスメソッド
モデルの全てのクエリに適用されるデフォルトの条件を設定できる
例えば...
class model < ApplicationRecord
default_scope -> {order(created_at: :desc)}
のようにモデルのデーターベースから要素を取得する順番を指定できる。
なお、oreder(:created_at)は昇順(ascending)になってしまうため、
railsでは order(created_at: :desc)で降順(descending)に指定できる。
また、-> はラムダ(lambda)の省略記法でブロックを引数に取ることができる
(今回のケースは{ order(created_at: :desc}を引数(argument)として取っている。
Discussion