Rails友好ID自定义路线

帕万·卡特帕利(Pavan Katepalli)

我正在尝试让我的路线像这样工作:

/articles/<category slug>/<article slug>

我正在使用:

ruby '2.1.2'
gem 'rails', '4.1.4'
gem "friendly_id", "~> 5.0.1"

我的类别中有很多文章

网址结构现在是:

/类别/

/文章/

因为我的routes.rb文件看起来像这样:

resources :categories
resources :articles

我的article.rb文件:

class Article < ActiveRecord::Base
    belongs_to :category

    extend FriendlyId 
    friendly_id :slug_candidates, use: [:slugged, :globalize]

    def slug_candidates
      [
        :name
      ]
    end
end

这是我的category.rb:

class Category < ActiveRecord::Base
        has_many :articles

        extend FriendlyId 
        friendly_id :slug_candidates, use: [:slugged, :globalize]

        # Try building a slug based on the following fields in
        # increasing order of specificity.
        def slug_candidates
          [
            :name
          ]
        end
end

如果我做这样的嵌套路线:

resources :categories do
   resources :articles
end

然后结构变成 /categories/<category slug>/articles/<article slug>

帕万·卡特帕利(Pavan Katepalli)

这正是我想要的。它是从mbillard的答案扩展而来的:

  get "/articles", to: "articles#index"
  resources :categories, path: 'articles' do
    resources :articles, path: '', only: [:show]
  end
  resources :articles, only: [:index, :new, :edit, :create, :update, :destroy]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用其他模型ID的Rails自定义路线

来自分类Dev

Rails自定义路线,如何删除?id =

来自分类Dev

使用其他模型ID的Rails自定义路线

来自分类Dev

在Rails中访问自定义路线

来自分类Dev

Rails 4 Devise自定义路线

来自分类Dev

在Rails中创建自定义路线

来自分类Dev

Rails中的自定义方法路线

来自分类Dev

Rails 4 Devise自定义路线

来自分类Dev

Ruby on Rails-创建自定义路线以#Show

来自分类Dev

自定义Rails投票系统路线不起作用

来自分类Dev

自定义rails参数中未找到路线错误

来自分类Dev

Rails 4.0.4自定义form_for路线

来自分类Dev

将参数传递到自定义的Rails路线中

来自分类Dev

嵌套路线中的Rails自定义动作

来自分类Dev

在自定义的Rails路线中包括属性

来自分类Dev

带有参数的Rails自定义路线

来自分类Dev

rails:自定义路线不起作用

来自分类Dev

具有自定义路线的Rails自定义错误页面

来自分类Dev

自定义 GIS 路线

来自分类Dev

使自定义类与xlsxwriter友好

来自分类Dev

用自定义 id 替换 rails 的默认 id

来自分类Dev

特定路线的自定义标头

来自分类Dev

使用NextJS自定义路线名称

来自分类Dev

库ApiController自定义路线

来自分类Dev

通过POST自定义路线

来自分类Dev

EmberJS自定义路线操作

来自分类Dev

自定义路线和洗劫

来自分类Dev

Rails应用将“发布”请求提交到自定义“获取”路线

来自分类Dev

如何在Ruby on Rails中添加自定义路线,控制器和动作?