2012-08-22 3 views
0

이 코드를 정리 싶어요 :레일 - 생성기 모듈 - method를 application_controller에 삽입하는 방법?

def insert_general_methods 
    inject_into_file "app/controllers/application_controller.rb", after: "protect_from_forgery" do 
     a = "\n\n private\n\n def current_user\n" 
     b = " @current_user ||= User.find_by_auth_token!(cookies[:auth_token]) if cookies[:auth_token]\n" 
     c = " end\n" 
     d = "\n helper_method :current_user\n\n" 
     e = " def authorize\n" 
     f = " redirect_to login_url, alert: 'Not authorized. Please login.' if current_user.nil?\n" 
     g = " end\n" 
     a+b+c+d+e+f+g 
    end 
    end 

나를 더 우아한 형태로이 방법을 주입 할 수 있습니다 레일에 토르 나 발전기 모듈에 어떤 방법이 있습니까?

답변

0

사용 히어 닥 문법 :

inject_into_file 'app/controllers/application_controller.rb', after: "protect_from_forgery" do <<-RUBY 
    # some code 
RUBY 
end