快速轨道命名路线问题

时间:2009-09-25 16:42:02

标签: ruby-on-rails named-routing

在我看来,我指定了一条命名路线:

show.html.erb - >

seo_path(:id => "45")

现在在我的路线中,我这样定义:

routes.rb - >

map.seo "/pages/:id/:permalink", :controller => "pages", :action => "show"

以下是我收到的错误消息。显然,差异是身份,虽然我不知道为什么。

更新

我将此作为我的错误:

seo_url failed to generate from {:controller=>"pages", :id=>"45", :action=>"show"}, expected: {:controller=>"pages", :action=>"show"}, diff: {:id=>"45"}

2 个答案:

答案 0 :(得分:2)

为什么不使用to_param方法?

class YourModel << AR::Base

 def to_param
    "#{id}-#{title.parameterize}"
 end

因此得到像

这样的路线
/pages/1-here-is-my-converted-article-title-to-permalink

除此之外,似乎Rails无法识别您的路线。你重新启动了你的网络服务器?尝试只发送一个:永久链接属性,看看它是怎么回事。

答案 1 :(得分:0)

我不完全理解你的问题。

在您的命名路线和视图中已经指定了id。看起来您还需要在视图中指定permalink。你收到错误吗?