Rails:如何打印请求参数?

时间:2011-01-29 16:08:51

标签: ruby-on-rails

我有一个Rails 3应用程序,我想在视图中打印请求参数。我该怎么做?

编辑:

目的是查看表格中发送的内容。

8 个答案:

答案 0 :(得分:77)

如果要打印所有参数,最简单的方法是使用inspect

puts params.inspect

或更好,使用Rails记录器

Rails.logger.debug params.inspect

在你的html / ERB中,你可以使用

<%= params.inspect %>

答案 1 :(得分:46)

我会使用debug(params)。这将为您提供格式良好的视图。

答案 2 :(得分:12)

我从强烈推荐的this episode of Ruby Rogues podcast上的Ruby Hero James Edward Gray中学到了这一点。 raise是瑞士军刀,用于检查Rails代码中的任何内容,并在浏览器中打印出来。

  

提高params.inspect

答案 3 :(得分:10)

参数存储在params哈希中。例如,如果有title参数,则可以使用<%= params[:title] %>在视图中显示该参数。

答案 4 :(得分:4)

Initialize在ruby和rails应用程序中也很有用

pretty_print

pretty_print doc:http://ruby-doc.org/stdlib-2.1.0/libdoc/pp/rdoc/PP.html

答案 5 :(得分:3)

这样的东西
arr_true_0_indices = (y_test == 0.0)
arr_true_1_indices = (y_test == 1.0)

arr_pred_0 = prediction[arr_true_0_indices]
arr_pred_1 = prediction[arr_true_1_indices]

plt.hist(arr_pred_0, bins=40, label='True class 0', normed=True, histtype='step')
plt.hist(arr_pred_1, bins=40, label='True class 1', normed=True, histtype='step')
plt.xlabel('Network output')
plt.ylabel('Arbitrary units / probability')
plt.legend(loc='best')
plt.show()

有效,但我想补充的是以下gem and Chrome plugin,这实际上让人大开眼界。

我把它放在这里是因为我认为它可以帮助人们查看params哈希,查看SQL查询或查看错误。

答案 6 :(得分:2)

来源:http://guides.rubyonrails.org/getting_started.html#creating-articles

  

提交表单时,表单的字段将作为参数发送到Rails。然后可以在控制器动作内引用这些参数,通常用于执行特定任务。要查看这些参数的外观,请将create action更改为:

def create
  render plain: params[:article].inspect
end

将表单POST到目标#create路由时的响应将是params[:article]的纯文本哈希输出

答案 7 :(得分:1)

您可以用于模型,控制器等。

puts YAML::dump(params)

来源:Ruby / Rails alternative to PHP print_r() and var_dump()

对于观点:

DebugHelper’s debug(object)

在你的情况下:

DebugHelper’s debug(params)