ruby-on-rails - ActionController::UrlGenerationError: 错误没有路由匹配

标签 ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rspec

我收到以下错误 ActionController::UrlGenerationError。

ActionController::UrlGenerationError:
       No route matches {:action=>"/accounts/100", :controller=>"accounts"}

下面是我抛出这个错误的代码。

  it "can find an account" do
  Account.should_receive(:find, with: {id: 2055, authorization: @auth}

  get "/accounts/100", nil, {"AUTH_TOKEN" => @auth}

  hashed_response = {
    "@type" => "test",
    "createdAt" => "2014-07-24T15:26:49",
    "description" => "Something about test",
    "disabled" => false
  }
  expect(response.status).to eq 200    
  expect(response.body).to eq(hashed_response.to_json);

end

我对此进行了谷歌搜索,发现没有为此定义路由。下面是我的 config/routes.rb 文件

Rails.application.routes.draw do
   resources :accounts do
      resources :holders
   end
end

最佳答案

我认为这个错误来自 Controller 规范?如果是这样,您只需使用代表您要调用的操作的符号,而不是 URL 本身。

例如。这是一个表演 Action ,所以你会使用:

获取:显示,id:100

关于ruby-on-rails - ActionController::UrlGenerationError: 错误没有路由匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25197026/

相关文章:

ruby-on-rails - Gem::LoadError: 倾斜?

ruby - 为什么是 ActiveRecord::Base.connected?为 false,在调用 establish_connection 之后

jquery - 持续检查时间

ruby-on-rails - RSpec should_receive 宏,包含需要测试的内容的 id

mysql - 如何向依赖于另一个模型的 Rails 模型添加验证

ruby-on-rails - Rails 全局变量 : is global variable share between http requests?

ruby-on-rails - 在 ruby​​ (NoMethodError) 模块中定义一个方法

ruby-on-rails - Google-maps-for-Rails - rake 任务中(对象)的未定义方法 `gmaps'

ruby-on-rails - rails : How to restart sidekiq?

ruby-on-rails - 如何在单个字段上应用多个正则表达式