У нас много категорий, и только их небольшая подмножество видна обычным пользователям.
За исключением администраторов, подкатегории не отображаются для большинства пользователей в модальном окне «Редактировать навигацию по категориям».
Если я увеличу количество включаемых подкатегорий в Category scope :limited_categories_matching (источник) с 5 до некоторого числа, что фактически отключает частичную загрузку, отсутствующие категории будут отображены.
Мое предположение состоит в том, что если подкатегории, видимые пользователю, случайно не окажутся среди первых пяти подкатегорий, они будут исключены из набора результатов проверкой прав доступа, что приведет к отсутствию элемента «Загрузить еще» в редакторе.
Я был бы рад, если бы количество результатов поиска можно было сделать настраиваемым в качестве быстрого исправления.
Кстати: categories-modal.gjs предполагает, что есть еще категории для загрузки, если количество отображаемых категорий равно 5, что также происходит, если нужно показать ровно 5 категорий, даже если все подкатегории загружены с помощью описанного выше патча.
Временное решение: я использую этот шаблон для исправления проблемы:
run:
- replace:
filename: "/var/www/discourse/app/models/category.rb"
from: "select_descendants(Category.from(\"matches\").select(:matches, :id), 5"
to: "select_descendants(Category.from(\"matches\").select(:matches, :id), 500"