Я искал лучшую идею для четкой реализации кнопки, которая перенаправляет пользователя на страницу создания поста в зависимости от текущего URL, но у меня все еще нет хорошего решения. У меня есть 1 такой же шаблон для 3 страниц. Каждая страница имеет 10 категорий (подстраниц). Может быть пример: urls.py:
app_name = 'forum'
1 category path('category1/, View.as_view(), name = category1
2 category path('category2/, View.as_view(), name = category2
1 category post creation path('category1/create-post/',
PostCreateView.as_view(my_id=11), name = category1-new-post
2 category post creation path('category2/create-post/',
PostCreateView.as_view(my_id=12), name = category2-new-post
Если пользователь находится на первой подстранице / категории и нажимает кнопку, то перенаправьте его на {% url 'forum: category1-new-post'%} Если пользователь находится на второй подстранице / категории и нажимает кнопку, затем перенаправляет его на форум {% url ': category2-new-post'%} и т. д. c 28x раз (3 страницы x 10 категорий)
Я пытался написать что-то вроде этого:
{% if request.resolver_match.url_name == 'category1' %}
button with href '{% url 'forum:category1-new-post' %}'
{% elif request.resolver_match.url_name == 'category2' %}
button with href '{% url 'forum:category2-new-post' %}'
и др. c 28 раз. Код выше не кажется хорошим. Написание 30 ifs не лучшая идея, и я не знаю, как справиться с этим. Для каждой публикации пост-страницы / категории у меня есть один и тот же CreateView с другим идентификатором (идентификатор пересылается мной в параметре в urls.py - my_id). Мне интересно, что является лучшим решением для выполнения этих условий в шаблонах и как насчет URL. Это способ не создавать 30-кратные URL-адреса для post_creation для каждой страницы?