railsのconfigの設置の
ErrorsController.action(action).call(env)
についてですが
1)ErrorsController.action(action)に引数が必要な理由は何ですか?
2)この場合のcallはブロック引数の実行ですか、それとも無名関数の実行ですかそれとも他の何かの実行ですか?
2)callが必要な理由は何ですか?
ruby
1Rails.application.configure do 2 config.exceptions_app = ->(env) do 3 request = ActionDispatch::Request.new(env) 4 5 action = 6 case request.path_info 7 when "/404"; :not_found 8 when "/422"; :unprocessable_entity 9 else; :internal_server_error 10 end 11 12 ErrorsController.action(action).call(env) 13 end 14end
ruby
1class ErrorsController < ApplicationController 2 layout "staff" 3 def not_found 4 render status: 404 5 end 6 7 def unprocessable_entity 8 render status: 422 9 end 10 11 def internal_server_error 12 render status: 500 13 end 14end
あなたの回答
tips
プレビュー