インスタンスメソッドの定義
Railsにおけるインスタンスメソッドの定義は、Active Recordモデルやコントローラーなどのクラス内で行われます。これらのクラスはRubyのクラスであり、インスタンスメソッドを定義することができます。
例えば、Active Recordモデル内でインスタンスメソッドを定義する方法を示します:
class User < ApplicationRecord
def full_name
"#{first_name} #{last_name}"
end
end
この例では、User
モデル内でfull_name
というインスタンスメソッドが定義されています。このメソッドは、first_name
とlast_name
属性を組み合わせてユーザーのフルネームを返します。
コントローラー内でのインスタンスメソッドの定義も同様です:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def edit
@user = User.find(params[:id])
end
def update
@user = User.find(params[:id])
if @user.update(user_params)
redirect_to @user
else
render 'edit'
end
end
end
この例では、UsersController
内でshow
、edit
、update
というインスタンスメソッドが定義されています。これらのメソッドは、それぞれユーザーの表示、編集、更新を担当しています。
インスタンスメソッドは、クラスのインスタンス(オブジェクト)に対して呼び出されるため、特定のオブジェクトに関連するロジックや処理を定義するのに役立ちます。