メソッド内にあるselfってなんなんだ
Railsの参考書を読みながら勉強を進めていたらメソッド内にselfが出てきたので自分で理解しようとしたのですがなかなか理解できず記事にしてみました。
問題点
コールバックの実装をしていたらメソッド内にselfが出てきた…
app/models/task.rb
class Task < ApplicationRecord
before_validation :set_nameless_name
#省略
private
def set_nameless_name
self.name = '名前なし' if name.blank?
end
end
ここではnameの値が入力されていないとき「名前なし」という値を自動でつけるようにしています。
自分で調べたこと
下記の記事を参考にしてみました。
https://qiita.com/suzuki-koya/items/1553c405beeb73f83bbc
しかし、理解ができず今思うことはどうしてここにselfをつける意味があるのか
nameだけではいいのでは?と思います。
分かりづらい記事になってしまいましたが、心優しい方コメントいただけたら幸いです。
参考本
・ 現場で使える Ruby on rails 5 速習実践ガイド
0