我有一个名为 Project 的模型,我将“to_param”方法定义为:
def to_param
permalink
end
我正在使用这个永久链接插件 github.com/febuiles/make_permalink 所以当我调用 p.permalink 时它会生成 id-name。
问题是,当我在网络浏览器中键入/projects/1 时,URL 不会更改为/projects/1-name。我怎样才能做到这一点?
看,当我去http://railscasts.com/episodes/63 URL 更改为/63-name
有什么建议吗?
提前致谢
最佳答案
看起来 Ryan 正在使用条件重定向到正确的 episode_url。 Railscasts 应用程序源代码位于 GitHub 上,因此您可以 see how he does it .
与 Drew 所建议的类似,这在您的情况下应该可以正常工作。
redirect_to @project, :status => 301 if params[:id] != @project.to_param?
关于ruby-on-rails - Rails 友好 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1921569/