有以下代码:
if Rails.env.production?
rescue_from ArgumentError, ActiveRecord::RecordInvalid do |exp|
render_error(message: t('exceptions.incorrect_request_params'))
end
end
def render_error(params)
@error_message = params[:message]
render 'shared/error', status: params[:status] || :bad_request
end
我使用此代码捕获异常,它运行良好,但是当它发生时我无法在控制台中看到此事件的原因 - 我只是看到这样的事情:
I, [2015-08-30T05:55:24.068366 #24617] INFO -- : Rendered shared/error.json.jbuilder (0.2ms)
I, [2015-08-30T05:55:24.068615 #24617] INFO -- : Completed 503 Service Unavailable in 289ms (Views: 1.1ms | ActiveRecord: 2.1ms)
如何渲染模板以及在控制台中编写?提前致谢!
答案 0 :(得分:0)
您可以使用Rails记录器登录控制台 http://guides.rubyonrails.org/debugging_rails_applications.html#the-logger
你会做这样的事情
def render_error(params)
@error_message = params[:message]
logger.error(@error_message)
render 'shared/error', status: params[:status] || :bad_request
end
答案 1 :(得分:-1)
if Rails.env.production?
rescue_from ArgumentError, ActiveRecord::RecordInvalid do |exp|
Rails.logger.error(exp)
render_error(message: t('exceptions.incorrect_request_params'))
end
end