在我的主要Sinatra控制器中,我想在从表单发布后调试params哈希.
我已经添加了:
puts params.inspect
Run Code Online (Sandbox Code Playgroud)
和
set :logging, :true
Run Code Online (Sandbox Code Playgroud)
params.inspect如果一切顺利,工作.但是如果在执行控制器之前发生错误,我就没有得到任何关于错误的信息,就像我在Rails中默认情况一样.
获得有用的调试信息的最佳方法是什么?
此示例根本不起作用(在我添加此代码后应用程序甚至不会启动):
configure do
Log = Logger.new("sinatra.log")
Log.level = Logger::INFO
end
Run Code Online (Sandbox Code Playgroud)
其次是:
Log.info "#{@users.inspect}"
Run Code Online (Sandbox Code Playgroud) if params[:parent_type] == "Order"
parent_id = nil
else
parent_id = params[:parent_id]
end
Run Code Online (Sandbox Code Playgroud)
一个Ruby人会嘲笑我这样写吗?它看起来并不像我见过的一些Ruby代码那样简洁.