Я хочу разместить «путь к месту» на моих страницах, показывающий, где находится пользователь.
Предположим, что пользователь просматривает один продукт, это может быть Index > Products > ProductName
, где каждое слово также является ссылкой на другие страницы.
Я думал о передаче в шаблон переменной с путем, подобным [(_('Index'), 'index_url_name'), (_('Products'), 'products_list_url_name'), (_('ProductName'), 'product_url_name')]
Но тогда мне интересно, где и как бы вы определили иерархию, не повторяя себя (СУХОЙ)?
Насколько я знаю, я видел два варианта
- Чтобы определить иерархию в urlconf. Это может быть хорошим местом, так как иерархия URL должна быть похожа на «путь расположения», но я закончу повторять фрагменты путей.
- Для написания контекстного процессора, который угадывает путь к местоположению по URL и включает переменную в контекст. Но это подразумевает сохранение независимой иерархии, которую нужно будет синхронизировать с URL-адресами каждый раз, когда я изменяю их.
Кроме того, я не уверен, как обращаться с URL, для которых требуются параметры.
У вас есть совет или совет по этому поводу? Есть ли канонический способ сделать это?