Ruby on Rails:什么是部分哈希参数和全集参数?

时间:2010-03-10 07:09:28

标签: ruby-on-rails deprecated

我在单元测试中使用asserts_redirected_to,我收到此警告:

DEPRECATION警告:不推荐使用assert_redirected_to和部分散列参数。改为指定完整的参数。

什么是部分哈希参数,什么是完整参数?这些不是我之前在Rails社区中使用的术语,我在Google上可以找到的唯一相关结果是参考此弃用警告。

这是我的代码:

 assert_redirected_to :controller => :user, :action => :search

也尝试过:

 assert_redirected_to({:controller => :user, :action => :search})

我可能已经猜到,我觉得我缺少一些参数或类似的东西,但API文档明确指出不是所有参数都需要包括在内:
http://rails.rubyonrails.org/classes/ActionController/Assertions/ResponseAssertions.html

2 个答案:

答案 0 :(得分:1)

http://github.com/rails/rails/blob/ab6d295ce41ba2aad400474dcf45052e7b631b53/actionpack/lib/action_controller/assertions/response_assertions.rb

检查此链接。尝试提供您在操作中给出的相同哈希值。

答案 1 :(得分:0)

看起来像是

assert_redirected_to :action => :show

不受欢迎

assert_redirected_to :action => :show, :controller => :music