개인 메서드에서 인스턴스 변수 초기화를 숨기는 것이 좋습니다.before_filter 메서드의 숨겨진 인스턴스 변수
예를 들어, 내가 어떤 행동을 가진 사용자 컨트롤러가 있습니다
class UsersController < ApplicationController
before_filter :get_user, only: [:show, :edit, :update, :destroy]
before_filter :set_user, only: [:new, :create]
def index
@users = User.all
end
def show
end
def new
end
def edit
end
def create
if @user.save
redirect_to @user, notice: 'User was successfully created.'
else
render action: 'new'
end
end
def update
if @user.update_attributes(params[:user])
redirect_to @user, notice: 'User was successfully updated.'
else
render action: 'edit'
end
end
def destroy
@user.destroy
redirect_to users_path
end
private
def get_user
@user = User.find(params[:id])
end
def set_user
@user = User.new(params[:user])
end
end
어떤 사람들은 마술처럼 보인다 말을하지만, DRY입니다. 어떻게 생각해?