From 0cb6f233f3066561915c3266c78992cf0635a32e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cxxq250=E2=80=9D?= <“xxq250@qq.com”> Date: Tue, 15 Nov 2022 14:40:37 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E6=90=9C=E7=B4=A2=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E7=BB=84=E7=BB=87=E5=92=8C=E7=94=A8=E6=88=B7=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/owner.rb | 5 +++++ app/queries/projects/list_query.rb | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/models/owner.rb b/app/models/owner.rb index b65ee0544..2763dc80f 100644 --- a/app/models/owner.rb +++ b/app/models/owner.rb @@ -68,4 +68,9 @@ class Owner < ApplicationRecord has_many :repositories, foreign_key: :user_id, dependent: :destroy has_many :applied_transfer_projects, dependent: :destroy + scope :like, lambda { |keywords| + sql = "CONCAT(lastname, firstname) LIKE :search OR nickname LIKE :search OR login LIKE :search " + where(sql, :search => "%#{keywords.strip}%") unless keywords.blank? + } + end diff --git a/app/queries/projects/list_query.rb b/app/queries/projects/list_query.rb index ce97fcd9c..0a3cc3a4c 100644 --- a/app/queries/projects/list_query.rb +++ b/app/queries/projects/list_query.rb @@ -41,7 +41,7 @@ class Projects::ListQuery < ApplicationQuery else items = items.by_name_or_identifier(params[:search]) end - items.or(Project.visible.where(user_id: User.like(params[:search]).pluck(:id))) + items.or(Project.visible.where(user_id: Owner.like(params[:search]).pluck(:id))) end def by_project_type(items)