【问题标题】:Rails custom route not workingRails自定义路线不起作用
【发布时间】:2013-02-22 21:54:20
【问题描述】:

感觉我做得对,但显然不是。

我有一个安静的资源,帖子,在控制器中有索引、显示、新建、更新、编辑等操作。在路线中,我有

resources :posts

我想让索引操作发生在 URL '/archive' 而不是 '/posts'

所以我在 routes.rb 文件中添加了这一行,在资源之后:

match '/archive', to: "posts#index"

但是当我点击posts_path 的链接时,它仍然会转到/post(尽管如果我将/archive 作为url 输入,它可以工作——虽然不理想)。使困惑。这可能与我安装了friendly_id有关吗?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:
    resources :posts, except: [:index]
    get 'archive' => 'posts#index', as: :posts
    

    【讨论】:

      【解决方案2】:

      您需要使用match '/archive', :to => 'posts#index', :as => 'archived' 之类的内容。然后你将有一条新的路线去archived_posts_path 的曲调。 posts_path 方法不会根据自定义匹配器动态更改。您可以随时运行rake routes 来查看您网站的路线列表。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-12-16
        • 2013-11-04
        • 2016-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多