主页

rails 如何使用 join进行where查询

2023-08-18 05:23PM

参考 :http://linlin.fun/blogs/812

假如:我们有三个表分别是articles, comment_users和comments,其中comments表是 articles 和 comment_users中间表

articles包含了所有文章的title,content,created_at,is_top, is_shown

comment_users包含了所有普通用户的username,password,created_at

commets包含所有评论的author_name,content,created_at(还有两个外键articles_id和comment_users_id)

在comments 控制器中实现index方法,查询符合条件的普通用户名:

# app/controllers/comments_controller.rb

class CommentsController < ApplicationController

   def index

       #使用joins方法连接两个表,然后使用where方法过滤查询条件,参数中有普通用户的名称,按照名称筛选

        @comments = Comment.joins(:comment_user).where("comment_users.username LIKE ?", "%#{params[:username]}%") if params[:username].present?

   end

 

返回>>

登录

请登录后再发表评论。

评论列表:

目前还没有人发表评论