如何使用send方法发布,获取,更新路由?

时间:2017-10-31 12:30:23

标签: ruby-on-rails ruby rspec

我试图干掉一些请求规范。 我需要传递以下参数的共享示例:

method, action, params

shared_example:

shared_context "blah" do |method, action, params|
  let(:url_path) { send("api_cars_path") }
end

如何使用作为参数传递的方法执行send发送的路由?像这样:

send(:get, "api_cars_path")

所以我可以动态地传递:get,:post等。

1 个答案:

答案 0 :(得分:1)

路由api_cars_path实际上是一个返回类似/api/cars的字符串的方法。因此,您需要调用路径助手,然后将其作为第一个参数传递给get方法。

send(:get, send(:api_cars_path))