首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获得条件较少的栏杆

如何获得条件较少的栏杆
EN

Stack Overflow用户
提问于 2015-05-03 10:25:32
回答 2查看 31关注 0票数 0

用户可以添加文章,文章被分类

当我进入用户档案时,我只能看到他的帖子

我想看看这个用户的帖子从选择的类别,如何做到这一点?如何从选定的类别查看此用户的帖子?

这是指向类别的链接。

代码语言:javascript
复制
link_to category.name, posts_path(category: category.name, user_id: current_user), class:"category"

以下是我的方法

代码语言:javascript
复制
def my_things   
    if params[:category].blank?
        @posts = Post.where(user_id: current_user).order("created_at DESC")
    else
        @category_id = Category.find_by(name: params[:category]).id
        @posts = Post.where(category_id: @category_id).order('created_at DESC')
    end 
end

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-03 11:57:16

您可以简化查询并使其更具可读性,并将共享的内容与特定的内容分开。

我已经用@category_id替换了@category,因为它更有用,如果您在视图中根本不使用它,那么就把它变成一个局部变量,而不使用@

代码语言:javascript
复制
def my_things
  @posts = Post.where(user_id: current_user).order(created_at: :desc)
  unless params[:category].blank?
    @category = Category.find_by(name: params[:category])
    @posts = @posts.where(category: @category)
  end 
end
票数 1
EN

Stack Overflow用户

发布于 2015-05-03 10:53:49

不介意,我明白了

类别链接:

代码语言:javascript
复制
link_to category.name, my_things_posts_path(category: category.name, user_id: current_user), class:"category"

方法:

代码语言:javascript
复制
def my_things   
    if params[:category].blank?
        @posts = Post.where(user_id: current_user).order("created_at DESC")
    else
        @category_id = Category.find_by(name: params[:category]).id
        @posts = Post.where(category_id: @category_id, user_id: current_user)
    end 
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30012730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档