ХЛЕБНЫЕ КРОШКИ DJANGO

Хлебные крошки (breadcrumbs) — это элементы навигации, которые представляют собой список ссылок на разделы сайта, позволяющий пользователю понимать свое местонахождение на сайте и быстро вернуться к предыдущим страницам.

Фреймворк Django предоставляет встроенный функционал для создания хлебных крошек на основе URL-адреса текущей страницы.

from django.views.generic import TemplateViewfrom django.views.generic.base import ContextMixinclass BreadcrumbsMixin(ContextMixin): breadcrumb_url = None breadcrumb_name = None def get_breadcrumbs(self): breadcrumbs = [] if self.breadcrumb_url and self.breadcrumb_name: breadcrumbs.append((self.breadcrumb_name, self.breadcrumb_url)) return breadcrumbs def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['breadcrumbs'] = self.get_breadcrumbs() return contextclass HomePageView(BreadcrumbsMixin, TemplateView): template_name = 'home.html' breadcrumb_name = 'Home' breadcrumb_url = '/'

В данном примере создается миксин BreadcrumbsMixin, который добавляет в контекст страницы список хлебных крошек breadcrumbs. При этом, для каждой страницы необходимо указать соответствующее значение breadcrumb_name и breadcrumb_url для того, чтобы хлебные крошки корректно формировались на каждой странице.

Как понять, что психопат, нарцисс вас утилизирует

Хлебные крошки на сайте. Что такое breadcrumbs?

django-sitetree: навигация для сайта

Wagtail: когда хочется чего-то приятнее, чем просто Django / Игорь Мосягин (Lamoda)

Junior Python Developer: полный разбор собеседования и ответы на наиболее частые вопросы интервью

Как сделать хлебные крошки (breadcrumbs) Django / Wagtail - Делаю себе сайт #16

BLGPG-D33E6494D1A8-24-11-23-23

Новые материалы: