LoginSignup
0
0

More than 3 years have passed since last update.

コールバックとは

登録や削除といった重要なイベントの前後に任意の処理を呼び出す仕組み。

参照:Railsのcallbackについて調べた

コールバックの実装

簡単な実装例を以下に示します。

例)生成されたオブジェクトのname属性にデータが入っていない場合、’名前なし’をname属性にいれる。
(name: nil => name: '名前なし')にする。

models/task.rb
class Task < ApplicationRecord
   before_validation :set_nameless_name

...

  private

  def set_nameless_name
    self.name = '名前なし' if name.blank?
  end

...
end

ここではbefore_validationを使ったので検証する前に処理が行われています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0