add: auto counter rake

This commit is contained in:
vilet.yy 2021-03-24 15:42:57 +08:00
parent 66608b3baa
commit 70c7b1da0c
1 changed files with 15 additions and 0 deletions

View File

@ -0,0 +1,15 @@
namespace :sync_count_cache do
desc "更新项目自动计数字段"
task projects: :environment do
Project.includes(:praise_treads, :fork_users, :issues, :watchers, :issues, :pull_requests, :versions, :issue_tags).find_each do |project|
project.update(forked_count: project.fork_users.size, closed_issues_count: project.issues.where(status_id: 5).size)
Project.reset_counters(project.id, :praise_treads)
Project.reset_counters(project.id, :watchers)
Project.reset_counters(project.id, :issues)
Project.reset_counters(project.id, :pull_requests)
Project.reset_counters(project.id, :versions)
Project.reset_counters(project.id, :issue_tags)
end
end
end