@community_topics = CommunityTopic.page(params[:page]).order('updated_at DESC').where(["username = ?", params[:search]])
这就是我通常会对我正在搜索的社区主题进行分页的原因,因为我可以直接检查用户名是否等于搜索到的参数,但在这种情况下具体存储的是user_id而不是字符串我不能比较。自从我编写rails以来的几个月,所以我非常确定我错过了一些简单的关联方式,并希望能够指导正确的方向。
很抱歉,如果我忽略了一些愚蠢的事情。由于某种原因它会超过我的头。
答案 0 :(得分:0)
假设您在params [:search] 中传递用户名。更新您的查询,如下所示:
@community_topics = CommunityTopic.joins(:user).order(updated_at: :desc).where("users.username = ?", params[:search]).page(params[:page])
如果您在params [:search] 中传递user_id。更新您的查询,如下所示:
@community_topics = CommunityTopic.joins(:user).order(updated_at: :desc).where("users.username = ?", User.find(params[:search]).username).page(params[:page])