fix: projects load by project language slowly
This commit is contained in:
parent
ea82a52b7b
commit
0af08bc967
|
@ -52,16 +52,14 @@ class VersionsController < ApplicationController
|
||||||
(params[:done_ratio].present? && params[:done_ratio].to_s != "all") ||
|
(params[:done_ratio].present? && params[:done_ratio].to_s != "all") ||
|
||||||
(params[:issue_type].present? && params[:issue_type].to_s != "all") ||
|
(params[:issue_type].present? && params[:issue_type].to_s != "all") ||
|
||||||
(params[:issue_tag_id].present? && params[:issue_tag_id].to_s != "all")
|
(params[:issue_tag_id].present? && params[:issue_tag_id].to_s != "all")
|
||||||
puts has_filter_params
|
|
||||||
@version_close_issues_size = has_filter_params ? version_issues.closed.size : @version.issues.issue_includes.closed.size
|
@version_close_issues_size = has_filter_params ? version_issues.closed.size : @version.issues.issue_includes.closed.size
|
||||||
@version_issues_size = has_filter_params ? version_issues.size : @version.issues.issue_includes.size
|
@version_issues_size = has_filter_params ? version_issues.size : @version.issues.issue_includes.size
|
||||||
puts @version_close_issues_size
|
|
||||||
puts @version_issues_size
|
|
||||||
if status_type.to_s == "1" #表示开启中的
|
if status_type.to_s == "1" #表示开启中的
|
||||||
version_issues = version_issues.where.not(status_id: 5)
|
version_issues = version_issues.where.not(status_id: 5)
|
||||||
else
|
else
|
||||||
version_issues = version_issues.where(status_id: 5)
|
version_issues = version_issues.where(status_id: 5)
|
||||||
end
|
end
|
||||||
|
puts cookies.to_json
|
||||||
|
|
||||||
@page = params[:page] || 1
|
@page = params[:page] || 1
|
||||||
@limit = params[:limit] || 15
|
@limit = params[:limit] || 15
|
||||||
|
|
|
@ -64,8 +64,11 @@
|
||||||
# index_projects_on_invite_code (invite_code)
|
# index_projects_on_invite_code (invite_code)
|
||||||
# index_projects_on_is_public (is_public)
|
# index_projects_on_is_public (is_public)
|
||||||
# index_projects_on_lft (lft)
|
# index_projects_on_lft (lft)
|
||||||
|
# index_projects_on_license_id (license_id)
|
||||||
# index_projects_on_name (name)
|
# index_projects_on_name (name)
|
||||||
# index_projects_on_platform (platform)
|
# index_projects_on_platform (platform)
|
||||||
|
# index_projects_on_project_category_id (project_category_id)
|
||||||
|
# index_projects_on_project_language_id (project_language_id)
|
||||||
# index_projects_on_project_type (project_type)
|
# index_projects_on_project_type (project_type)
|
||||||
# index_projects_on_recommend (recommend)
|
# index_projects_on_recommend (recommend)
|
||||||
# index_projects_on_rgt (rgt)
|
# index_projects_on_rgt (rgt)
|
||||||
|
|
|
@ -46,11 +46,11 @@ class Cache::PlatformProjectLanguagesCountService < ApplicationService
|
||||||
|
|
||||||
def reset_platform_project_language_count_by_key
|
def reset_platform_project_language_count_by_key
|
||||||
return if key.nil?
|
return if key.nil?
|
||||||
$redis_cache.hset(platform_project_language_count_key, key, Project.joins(:project_language).where(project_languages: {name: key}).count)
|
$redis_cache.hset(platform_project_language_count_key, key, ProjectLanguage.where(name: key).projects_count)
|
||||||
end
|
end
|
||||||
|
|
||||||
def reset_platform_project_language_count
|
def reset_platform_project_language_count
|
||||||
Project.joins(:project_language).group("project_languages.name").count.each do |k, v|
|
ProjectLanguage.where.not(projects_count: 0).group("project_languages.name").sum(:projects_count).each do |k, v|
|
||||||
$redis_cache.hset(platform_project_language_count_key, k, v)
|
$redis_cache.hset(platform_project_language_count_key, k, v)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
class AddProjectLanguageIndexToProjects < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
add_index :projects, :project_category_id
|
||||||
|
add_index :projects, :project_language_id
|
||||||
|
add_index :projects, :license_id
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue