我正在try 更新到Rails 5,我收到了以下弃用警告:
弃用警告:由于
ActionController::Parameters
不再从散列继承,所以散列的方法已弃用,并将在Rails 5.1中删除.使用这种不推荐的行为会expose 出潜在的安全问题.如果继续使用此方法,可能会在应用程序中创建一个可被利用的安全漏洞.相反,考虑使用这些未被记录的方法中的一种:http://api.rubyonrails.org/v5.0.0/classes/ActionController/Parameters.html(从CulnnHyb头/数据/项目/门户/主干/APP/Helps/AppultuaHelpR.RB:114调用).
警告显示的线条如下所示:
link_to(name,
{
action: action_name,
params: params.merge({ order: key, page: nil })
},
{
title: "Sort by this field",
}) +
正如你所见,我不是打to_hash
.也许Rails是.也许还有别的Ruby .我无从得知,因为他们认为不值得提供堆栈跟踪.(专业提示-通常值得提供堆栈跟踪!)
所以不管怎样,我按照链接,计划找到一个替代品,和the merge
method does not appear to be deprecated,但可能他们只是忘了记录不推荐的状态,所以我真的不能确定.
那我该怎么做才能弄清楚呢?