Ruby on rails 为自定义管线创建指向的链接

Ruby on rails 为自定义管线创建指向的链接,ruby-on-rails,routes,Ruby On Rails,Routes,我有一个自定义路线(如果我这样做是正确的,这是我第一次这样做),如下所示: map.connect 'purchases/type/:type', :controller => 'purchases', :action => 'index' 因此,我想创建一个链接,该链接将使用url/purchases/type/(somenumber) 或者我完全愿意找到更好的方法 编辑: 我试图使用一个类别(类型)来过滤索引。因此,如果我单击链接,它将是/purchases/type/1,它将

我有一个自定义路线(如果我这样做是正确的,这是我第一次这样做),如下所示:

map.connect 'purchases/type/:type', :controller => 'purchases', :action => 'index'
因此,我想创建一个链接,该链接将使用url/purchases/type/(somenumber)

或者我完全愿意找到更好的方法

编辑:

我试图使用一个类别(类型)来过滤索引。因此,如果我单击链接,它将是/purchases/type/1,它将显示类型1中的所有项目。我不想在节目中出现这种情况,我可以使用/purchases/?type=1,但我正在努力使URL看起来更好。

基于(“命名路由”部分),我会尝试以下方法:

map.purchases_for_type 'purchases/type/:type', :controller => 'purchases', :action => 'index'
我假设你会用
link\u调用它到'link text',购买类型(@type\u param)


作为参考,我将介绍Rails3的实现方法:

match '/purchases/type/:type' => 'purchases#index', :as => "purchases_for_type", :via => "get"
或者更好(安静):


然后你可以用
链接到'link text',购买类型(@type\u param)

未经测试,但我相信这就是你想要的

map.purchase_type 'purchases/type/:type', :controller => 'purchases', :action => 'index'
然后


祝你好运。

我得到了一个未定义的方法“为类型购买”,所以我想我做错了什么。我正在放地图。购买。。。在routes.rb和我视图中的链接中。购买类型()的\u。你看对了吗?我的栏杆生锈了。。。也许可以尝试类似Cory建议的方法:
link\u到“link text”,购买\u-type(:type=>@type\u-param)
这应该可以,但您需要在末尾添加\u路径或\u url。采购类型路径(…)
map.purchase_type 'purchases/type/:type', :controller => 'purchases', :action => 'index'
link_to 'foo', purchase_type_path(:type => 'your_type')