2011-08-02 33 views
1

我的問題很簡單,但我找不到解決方案。link_to上的id參數

我使用:

  • 的Rails 3.0.9
  • 紅寶石1.9.2p180(2011-02-18修訂30909)x86_64的Linux的]

它的問題:

在舊的軌道版本時使用的link_to函數創建一個鏈接,像這樣:

link_to owner.name, 
    { 
     :controller => 'owner', 
     :action => 'view', 
     :id => owner 
    }, 
    :title => owner.name 

返回:

<a href="/owner/view/10001" title="Bla, bla, bla, bla">I'm using rails</a> 

但現在(在軌道3)它的返回:

<a href="/owner/view?id=10001" title="Bla, bla, bla, bla">I'm using rails</a> 

在此先感謝。

P.S:我是一個新手英語口語。

+0

你有沒有配置此所有者控制器路線? –

+0

不... ???控制器的路線?沒有堅定嗎? –

回答

1

你可以指定你的根routes.rb:

match '/owner/view/:id' => 'owner#view', :as => :owner_view 

,然後用它是這樣的:

link_to owner.name, owner_view_path(owner) 
1

試試這個

link_to owner.name, owner, :title => owner.name 

如果你的動作是detail,則:

link_to owner.name, [:detail, owner], :title => owner.name 

,並確保您的detail操作包括在你的路由

+0

如果動作url參數不同?例如:':action =>'detail'' –

+0

@Javier Valencia,已更新 – fl00r