【问题标题】:id parameter on link_tolink_to 上的 id 参数
【发布时间】:2011-08-02 20:21:37
【问题描述】:

我的问题很简单,但我没有找到解决方案。

我正在使用:

  • 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>

但现在(在 rails 3 中)它又回来了:

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

提前致谢。

P.S:我是一个说英语的新手。

【问题讨论】:

  • 您是否为此所有者控制器配置了路由?
  • 不... ???控制器的路线???坚决不?

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


【解决方案1】:

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

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

然后像这样使用它:

link_to owner.name, owner_view_path(owner)

【讨论】:

    【解决方案2】:

    试试这个

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

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

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

    并确保您的 detail 操作包含在您的路线中

    【讨论】:

    • 如果动作 url 参数不同?例如::action =&gt; 'detail'
    猜你喜欢
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-16
    相关资源
    最近更新 更多