2012-06-22 72 views
3

我有Rails 3.2.3,它工作得很好。测试通过。今天我从Rails 3.2.3升级到了Rails 3.2.6。升级到Rails 3.2.6和路由错误

我这样做,通过改变的Gemfile:

我删除

gem 'rails', '3.2.3' 

,并添加

gem 'rails', '3.2.6' 

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

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 

我到网络上的真实链接,出人意料的是,它的罚款。谁可以帮我这个事 ?

+0

显示其中断的零件的语法..它寻找的路线包括id ..这条路线在哪里? {:id =>“76”,:controller =>“products”,:action =>“show”} –

+0

这里的问题完全相同,从3.2.5升级到3.2.6。 – recurser

+6

回复这个SO-post:http://stackoverflow.com/questions/11466917/routing-error-when-updating-to-rails-3-2-6-or-rspec-2-11-0 –

回答

0

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

为了解决这个问题,只是锁定旅程宝石的版本1.0.3(这是稳定)

gem "journey", "1.0.3"