【问题标题】:How to filter resources in Rails?如何在 Rails 中过滤资源?
【发布时间】:2016-04-04 10:31:18
【问题描述】:

目前,我正在 Rails 中构建博客,我很好奇是否有正确的方法以下列方式显示资源?

在这种情况下,您可以列出所有帖子,如果需要,可以单独列出类别帖子。

您通常会说 - 使用范围,但我不确定范围是否会产生以下地址:/blog/features/blog/releases

那么,我该怎么做呢?

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-4


【解决方案1】:
#config/routes.rb
resources :blogs, path: "blog" do 
   get ":category", to: :index, on: :collection #-> url.com/blog/:category
end

#app/controllers/blogs_controller.rb
class BlogsController < ApplicationController
   def index
       @posts = params[:category] ? Post.joins(:category).where(category: {name: params[:category]}) : Post.all
   end
end

#app/views/posts/index.html.erb
<% @posts.each do |post| %>
   ...
<% end %>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-02
    • 2011-10-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 2016-08-16
    • 2011-02-15
    • 1970-01-01
    相关资源
    最近更新 更多