升级到Rails 3.2.6和路由错误

时间:2012-06-22 19:44:03

标签: ruby-on-rails ruby-on-rails-3 controller gem

我正在使用Rails 3.2.3并且它工作得非常好。测试通过。今天我从Rails 3.2.3升级到Rails 3.2.6。

我通过更改Gemfile来实现这一点:

我删除

gem 'rails', '3.2.3'

并添加

gem 'rails', '3.2.6'

我跑bundle update。为了查看是否有效,我运行了所有规范测试。我有几个模型,显然所有的控制器#show都失败了。只是控制器#show。以下是错误消息:

Failure/Error: get 'show', :id => product.to_param
     ActionController::RoutingError:
       No route matches {:id=>"76", :controller=>"products", :action=>"show"}

以下是测试代码:

let!(:product) { create(:product) }
describe "GET show" do
    it "should assign the requested product as @product" do
      get 'show', :id => product.to_param
      assigns[:product].should == product
    end
  end

我访问了网络上的真实链接,令人惊讶的是,它很好。任何人都可以帮我吗?

1 个答案:

答案 0 :(得分:0)

这是最新旅程宝石的问题,(1.0.4) -

要解决这个问题,只需将旅程宝石的版本锁定到1.0.3(这是稳定的)

gem "journey", "1.0.3"