Routes 通过perameter轨道3时没有路线匹配

Routes 通过perameter轨道3时没有路线匹配,routes,ruby-on-rails-3,Routes,Ruby On Rails 3,尝试获取路由,以便传递字符串,以便在控制器中查询数据库 controller: def sales @sales= Micropost.where(:sale_name => params[:sale]) @sales = Sale.sales end View: <%= link_to('See all', :controller =>"microposts", :action => "sales", :sale => sales_item.sale_na

尝试获取路由,以便传递字符串,以便在控制器中查询数据库

 controller:
 def sales
@sales= Micropost.where(:sale_name => params[:sale])
@sales = Sale.sales
 end

View:
<%= link_to('See all', :controller =>"microposts", :action => "sales", :sale => sales_item.sale_name) %>

Routes.rb
match '/sales/:sale', :to => 'microposts#sales'
更改路线以匹配“microposts/sales”=>“micropostssales”,您可以将参数传递给该操作

,它将类似于,匹配'sales'=>'microsoftsessales',:as=>:sales。这样,您将获得sales\u url和sales\u路径。您可以将其用作,例如sales\u path:sale=>sales\u item.sale\u name

希望这有帮助