DEV: Add category custom field preloading to CategoryList (#23969)

This commit also introduced a plugin API for preloading category custom
fields.
This commit is contained in:
Angus McLeod
2023-10-26 21:34:23 +08:00
committed by GitHub
parent b8ee52c4cb
commit 2a75656ff2
4 changed files with 69 additions and 0 deletions

View File

@@ -6,6 +6,9 @@ class CategoryList
cattr_accessor :preloaded_topic_custom_fields
self.preloaded_topic_custom_fields = Set.new
cattr_accessor :preloaded_category_custom_fields
self.preloaded_category_custom_fields = Set.new
attr_accessor :categories, :uncategorized
def self.register_included_association(association)
@@ -139,6 +142,10 @@ class CategoryList
@categories = query.to_a
if preloaded_category_custom_fields.any?
Category.preload_custom_fields(@categories, preloaded_category_custom_fields)
end
include_subcategories = @options[:include_subcategories] == true
notification_levels = CategoryUser.notification_levels_for(@guardian.user)