我在为一些路线编写规范时遇到了一些麻烦。几乎任何铁路匹配路线都遇到了这个问题。这是代码:
在routes.rb
中match "/:id" => "home#order"
home_controller.rb中的
def order
respond_to do |format|
format.html { render :layout => 'order' }
end
end
home_controller_spec.rb中的:
it "should render the order layout" do
get :order
response.layout.should == 'layouts/order'
end
rake路线有:
/:id(.:format) {:controller=>"home", :action=>"order"}
然而,该规范引发了这个例外:
1) HomeController when not signed in should render the order layout
Failure/Error: get :order
ActionController::RoutingError:
No route matches {:controller=>"home", :action=>"order"}
我做错了什么?
答案 0 :(得分:2)
我认为
get :order
只有在使用命名路由时才有效。试试吧
get "/1"