Logré averiguar cómo solucionar esto, pero pensé que valía la pena reportarlo.
Intenté asignar una categoría padre, cat-B, a cat-A, que ya tenía 3 subcategorías dentro. El sistema de Discourse me mostró un mensaje de error y dijo algo como «no podemos mover subcategorías». Así que supongo que hay un límite para cuántas categorías pueden anidarse entre sí.
Concluí que no hay problema y que simplemente reasignaría la categoría padre de las 3 subcategorías primero. Pero cuando intenté hacerlo, obtuve un error de excepción como este.
La consola muestra un error 404 para la URL que termina en c/cat-B/cat-A/subcategory/edit/find_by_slug.json.
Un error similar aparece para las otras 2 subcategorías de cat-A.
Lo que debería mostrarse en su lugar es c/cat-A/subcategory/edit, sin el cat-B. Así que escribí manualmente la URL con este formato y llegué a la página normal de configuración de categorías, como era de esperar. De esta manera pude corregir las 3 subcategorías y cat-A.
Esto probablemente sea solo un pequeño error que valdría la pena corregir en el futuro
¿Sabe qué versión de Discourse está utilizando su sitio? Si su sitio es autoalojado, puede encontrar la versión cerca de la parte superior del panel de administración del sitio. La razón por la que pregunto es porque creo que Discourse debería haberle impedido agregar la categoría principal. Cuando intento hacerlo, obtengo el siguiente error:
Es posible que esté encontrando un error que ha sido corregido en una versión más reciente de Discourse. También es posible que no esté reproduciendo el problema correctamente.
Y, después de escribir todo esto, el error se solucionó mágicamente sin que tuviera que usar el método de escribir manualmente la URL. Parece que ya todo está bien, amigos.