Проблемы с активацией боковой панели после обновления Doc Categories

После внесения этих изменений в категории документации

боковая панель перестала активироваться. Я использую версию 3.6.0.beta1-dev (17d735b3ad) с темой Horizon, в логах ошибок ничего нет. Я также убедился, что установлена главная тема, пересобрал лаунчер и выполнил команду bundle exec rake doc_categories:build_sidebar.

2 лайка

Спасибо за отчет, мы скоро его проверим.

2 лайка

О нет, это не очень хорошо.

У тебя ещё есть вывод команды bundle exec rake doc_categories:build_sidebar? (Если это приватные данные, можешь отправить мне в личные сообщения).

Пока я не видел проблем здесь на Meta и Horizon, но возможно, я упускаю какое-то состояние. Если у тебя есть доступ к Data Explorer, проверь, созданы ли индексы, разделы и ссылки.

запрос
SELECT
  i.category_id,
  i.index_topic_id,
  sec.section_names,
  lnk.section_links
FROM doc_categories_indexes i
LEFT JOIN LATERAL (
  SELECT
    string_agg(COALESCE(s.title, ''), ', ' ORDER BY s.position) AS section_names
  FROM doc_categories_sidebar_sections s
  WHERE s.index_id = i.id
) AS sec ON TRUE
LEFT JOIN LATERAL (
  SELECT
    string_agg(l.href, ', ' ORDER BY s.position, l.position) AS section_links
  FROM doc_categories_sidebar_sections s
  LEFT JOIN doc_categories_sidebar_links l
    ON l.sidebar_section_id = s.id
  WHERE s.index_id = i.id
) AS lnk ON TRUE
ORDER BY i.category_id, i.index_topic_id;

Одна из возможных причин — кэш сайта. Поскольку категории кэшируются в течение 30 минут, обновление могло произойти, а обычный боковой панель был закэширован до выполнения задачи rake.

1. миграция в таблицу
2. промах кэша -> отображается обычная боковая панель вместо панели документации
3. задача rake для построения боковой панели
4. должно отображаться обновлённая боковая панель

Технически, шаг (4) должен произойти и сбросить кэш. Если проблема в этом, ты уже должен был увидеть изменения.

3 лайка

Спасибо за быстрый ответ! Похоже, дело не в кэше, так как проблема сохраняется. Я отправляю вам личное сообщение с результатами запроса Data Explorer и выводом команды bundle exec rake doc_categories:build_sidebar. Она завершается с фатальной ошибкой

2 лайка

Просто отчёт для будущих читателей: задача rake, запущенная в оригинальном посте, использовала

bundle exec rake doc_categories:build_sidebar

и завершилась ошибкой:

ActiveRecord::NoDatabaseError: Мы не смогли найти вашу базу данных: discourse. Доступные конфигурации базы данных можно найти в config/database.yml. (ActiveRecord::NoDatabaseError)

В зависимости от настроек самостоятельного размещения, скорее всего, задачу нужно запускать от пользователя discourse, чтобы получить доступ к базе данных.

sudo -E -u discourse bundle exec rake doc_categories:build_sidebar

@MachineScholar подтвердил, что разделы и ссылки были успешно созданы. :ok_hand:t2:

4 лайка

Эта тема была автоматически закрыта через 3 дня. Новые ответы больше не допускаются.