rubyのselfについて、自分の理解が不安な場合があります。
自分のselfの認識は自分のクラス名の、
メソッド呼び出し(self.hogeで自身のクラスのhogeメソッドを呼びだし)や
アクセサメソッドが定義されている場合はインスタンス変数の参照に利用できると考えています。
では、下記のようにアクセサメソッドが定義されていない場合は、set_nameless_nameを呼び出した
インスタンスのnameに値を定義できるということでよろしいでしょうか?
また、下記のコードにselfがついていない単にローカル変数になってしまい呼び出したインスタンスでは使えないということでよろしいでしょうか?
task.rb
task.rb
1class Task < ApplicationRecord 2 3 private 4 5 def set_nameless_name 6 self.name = '名前なし' if name.blank? 7 end 8end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/04 15:08