diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index a2d6ad618..3738d19bd 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -39,11 +39,14 @@ class ProjectsController < ApplicationController category_id = params[:category_id] @total_count = - if category_id.blank? && params[:search].blank? + if category_id.blank? && params[:search].blank? && params[:topic_id].blank? # 默认查询时count性能问题处理 ProjectCategory.sum("projects_count") - Project.visible.joins("left join organization_extensions on organization_extensions.organization_id = projects.user_id").where("organization_extensions.visibility =2").count elsif params[:search].present? @projects.total_count + elsif params[:topic_id].present? + topic = ProjectTopic.find_by(id: params[:topic_id]) + topic&.projects_count || 0 else cate = ProjectCategory.find_by(id: category_id) cate&.projects_count || 0