【问题标题】:Stackoverflow like Urls with RailsStackoverflow 就像带有 Rails 的 Urls
【发布时间】:2011-08-31 21:34:49
【问题描述】:

大多数关于在 Rails 中美化 Url 的教程都解释了如何获取像 www.example.org/resource/3-some-sluggish-slug 这样的 Url,使用 to_param 方法非常容易。

我想要的是在 Rails 3 应用程序中美化 Urls,例如 Stackoverflow (www.example.org/resource/3/some-sluggish-slug)。 some-sluggish-slug 可以是那里的任何字符串,它只是为了有一个更好的 Url,并且被所有逻辑简单地忽略(如在 Stackoverflow 中)。是否也有一种简单的方法可以做到这一点?还是我必须在 URL 到达路由文件或路由文件本身之前以某种方式重写它?

【问题讨论】:

    标签: ruby-on-rails url slug


    【解决方案1】:

    按照教程进行操作,但 ID 后不要使用连字符,而是使用 /。你需要编写一个路由来处理这个问题。

      match 'resource/:id', :to => 'resources#show', :id => /\d+\/[a-z0-9\-]+/, :as => 'public_post'
    

    【讨论】:

      【解决方案2】:

      您必须定义自己的路线;请参阅the Rails guide section 3 及以后。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-30
        • 2014-10-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多