1

我正在尝试为我的 Rails 3 控制器之一编写规范。我想走的路是:

GET /:user_id/photos/shared_photos?page=:page

该 :page 参数通常通过来自浏览器中的 JQuery 单击处理程序的 AJAX 请求来实例化。但是,在 RSpec 中,我正在尝试直接测试控制器,并且在传递该 :page 值的语法方面遇到了问题。我试过了:

get :shared_photos, :id => user.id, :page => 2

但这不起作用。我得到一个路由错误,大概是因为没有 /:page/ 部分路由,所以 Rails 不明白。我的问题是,如何从我的控制器规格之一传递该页面参数?

提前致谢。

4

1 回答 1

0

添加任意参数不get应该导致路由错误(本身),所以我认为你在错误的地方寻找问题。

如果您正在测试 AJAX 响应,也许您应该尝试:

xhr :get, :shared_photos, :id => user.id, :page => 2

还要确保格式与您的控制器所期望的匹配(如果 JSON 则添加:format => :json)。

另请参阅我之前对此问题的回答:如何在 RSpec 中测试此代码?

于 2012-08-21T21:37:20.267 回答