Как создать ярлык для перехода к разделу на другой странице?

У меня есть книга как объект, и я делаю постраничную нумерацию ее глав, но ее главы являются ОБЪЕКТАМИ, с chapter.number и chapter.story. У меня есть резюме книги с номерами всех глав, но, таким образом, резюме должно быть ярлыком на страницу, например, book/chapter?page=5&#chapter_five.

class ChapterView(DetailView):

    template_name = "tailwind/book_detail.html"
    model = Books
    slug_url_kwarg = "book_name"
    slug_field = "name"

    def get_object(self, queryset=None):
        try:
            return Books.objects.get(name=self.kwargs["book_name"])
        except Books.DoesNotExist as e:
            raise Http404

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)

        tuple_book = self.get_object().ordered_chapter().items()
        book = [{"chapter_number": chapter_number, "chapter_resume": chapter_resume} for chapter_number, chapter_resume in tuple_book]

        page = self.request.GET.get("page", 1)
        paginator = Paginator(book, 2)

        try:
            paginated_book = paginator.page(page)
        except PageNotAnInteger:
            paginated_book = paginator.page(1)
        except EmptyPage:
            paginated_book = paginator.page(paginator.num_pages)

        # just get the current page
                # the book is not paginated because I need to return all indexes in the template
        for chapter in book.object_list:
                if self.request.GET.get("chapter_number", None) == chapter.chapter_number:
                    context["chapter_page"] = chapter["chapter_number"].get_page_number()

        context["book"] = book
        context["paginated_book"] = paginated_book
        return context

Теперь, это мой шаблон, это та часть, где я возвращаю постраничные главы.

<div>
  <div>
    {% for chapter in paginated_changelogs %}
      <div>
        <div>
                    <h2>{{ chapter.chapter_number }} </h2>
          <div>
            {{ chapter.chapter_resume }}
          </div>
        </div>
      </div>
    {% endfor %}
  </div>

А это мой книжный индекс, где я должен перейти к определенному разделу, даже если он находится на другой странице:

<ul>
          {% for chapter_number in book %}
            <li>
                            <a
                                href="?page={{ chapter_page }}&#{{ chapter_number }}">
                                    {{ chapter_number }}
                                </a>
                        </li>
          {% endfor %}
        </ul>

Однако это не работает, потому что функция не возвращает страницу. Она ничего не возвращает, я получаю book/chapter?page=&#chapter_five.

Я пытался реализовать этот ответ Как создать индекс книги с помощью Python?, но что-то работает не так.

Вернуться на верх