link_to上的id参数

时间:2011-08-02 20:21:37

标签: ruby-on-rails parameters link-to

我的问题非常简单,但我找不到解决方案。

我正在使用:

  • Rails 3.0.9
  • ruby​​ 1.9.2p180(2011-02-18修订版30909)[x86_64-linux]

问题是:

在旧的rails版本中使用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:我说英语是新手。

2 个答案:

答案 0 :(得分:1)

试试这个

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

如果您的操作是detail,那么:

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

确保您的detail行动包含在路线中

答案 1 :(得分:1)

您可以在routes.rb中指定root用户:

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

然后像这样使用它:

link_to owner.name, owner_view_path(owner)