이미 하위 카테고리가 있는 카테고리에 상위 카테고리를 지정하면 오류가 발생합니다

해결 방법을 알아냈지만, 보고할 가치가 있다고 생각하여 공유합니다.

이미 3개의 하위 카테고리가 있는 cat-A에 상위 카테고리로 cat-B를 지정하려고 했습니다. 그런데 Discourse 시스템에서 오류 메시지가 뜨며 '하위 카테고리를 이동할 수 없다’는 식의 내용을 표시했습니다. 즉, 카테고리끼리 중첩될 수 있는 횟수에 한계가 있는 것 같습니다.

그렇다면 괜찮다고 생각하고, 먼저 3개 하위 카테고리의 상위 카테고리를 다시 지정하려고 했습니다. 하지만 그렇게 하려니 다음과 같은 예외 오류가 발생했습니다.

콘솔에서는 c/cat-B/cat-A/subcategory/edit/find_by_slug.json으로 끝나는 URL에 대해 404 오류가 표시됩니다.

cat-A의 다른 두 하위 카테고리에서도 비슷한 오류가 나타납니다.

원래 표시되어야 하는 것은 cat-B 없이 c/cat-A/subcategory/edit이어야 합니다. 그래서 해당 형식으로 URL을 수동으로 입력하니 예상대로 정상적인 카테고리 설정 페이지로 이동했습니다. 이 방법으로 3개 하위 카테고리와 cat-A 모두를 수정할 수 있었습니다.

이것은 아마도 미래에 수정할 가치가 있는 작은 버그일 것입니다 :muscle:

현재 사이트에서 사용하는 Discourse 버전이 무엇인지 알고 계신가요? 사이트가 셀프호스팅된 경우, 관리자 대시보드 상단 근처에서 버전을 확인할 수 있습니다. 이렇게 묻는 이유는, Discourse가 상위 카테고리를 추가하는 것을 방지해야 한다고 생각하기 때문입니다. 제가 직접 시도해 보니 다음과 같은 오류가 발생합니다:

최근 버전의 Discourse에서 수정된 버그에 부딪히고 계실 수도 있습니다. 또한 제가 문제를 정확히 재현하지 못하고 있을 수도 있습니다.

@simon 도움 주셔서 감사합니다.

사이트는 셀프 호스팅되어 있으며 최신 버전인 것 같습니다.

버전 세부 사항입니다. 도움이 될까요?

/logs 페이지를 방문할 때 오류 세부 정보가 있나요?

/logs에서 관련 에러 세부 정보를 찾을 수 없었습니다. 개발자가 아니라서 놓친 부분이 있을 수도 있습니다.

하지만 에러를 재현할 수 있었습니다. 꽤 일관되게 발생하는 것 같습니다. /logs를 다시 확인해 보았지만 새로운 내용은 없었습니다.

이미 하위 카테고리가 있는 카테고리에 상위 카테고리를 지정하려고 시도했을 때 받은 메시지는 다음과 같습니다.

이후에 무슨 일이 일어나고 있는지 더 자세히 설명드리겠습니다:

1. Cat-A에 관하여
새로운 상위 카테고리를 지정하려고 시도한 하위 카테고리가 있는 카테고리

  • Cat-A는 카테고리 홈 페이지에서 정상적으로 표시됩니다. Cat-A와 하위 카테고리를 탐색하는 것도 정상적으로 작동합니다.
  • Cat-A는 더 이상 모든 카테고리 아래에 있는 기본 내비게이션 메뉴에 표시되지 않습니다.
  • Cat-A를 편집할 때, 해당 페이지가 표시되지 않는다는 404 오류가 나타납니다.

2. Cat-B에 관하여
Cat-A를 여기에 지정하려고 시도한 대상

  • Cat-A가 Cat-B의 드롭다운 목록에 표시됩니다.
  • Cat-B를 편집할 때는 모든 것이 정상입니다.

3. 하위 카테고리에 관하여

어떤 하위 카테고리를 편집하든 동일한 오류가 나타납니다.

이 모든 내용을 작성한 후, URL을 수동으로 입력하는 우회 방법을 사용하지 않아도 에러가 마법처럼 사라졌습니다. 지금은 모두 정상인 것 같습니다.