Передача пк из одного шаблона в другой
Недавно я заново изучаю django/python и пытаюсь создать приложение для управления проектом абонемента между друзьями. Я застрял в поисках ответа, возможно, это моя формулировка, но я пытаюсь понять, как передать значение из одного шаблона в другой. Вот пример того, что я делаю.
views.py
def home_page_view(request):
sessions = DraftSession.objects.filter(session_status="ACTIVE")
return render(request, "index/index.html", {
'arena_mappings': ARENA_MAPPINGS,
'team_mappings': TEAM_MAPPINGS,
'sessions': sessions,
})
index.html
{% for session in sessions %}
<tr>
<td> {{ session.season_year }} </td>
<td> {{ team_mappings|get_item:session.home_team }} </td>
<td> {{ arena_mappings|get_item:session.home_team }} </td>
<td> {{ session.create_date }} </td>
<td> {{ session.session_owner }} </td>
<td> <button type="button" class="btn btn-primary">Join Now!</button> </td>
</tr>
{% endfor %}
Используя кнопку в последнем столбце, я хочу, чтобы пользователь мог перейти на новую страницу, на которой есть информация о выбранной строке, я предполагаю, что она будет передана через pk для строки базы данных. Я настроил представление, урлы и т.д.; просто не знаю, как передать выбор на новую страницу. Буду признателен за любую помощь!
<a href="/your-url/{{ session.pk }}" class="btn btn-primary">Join Now!</a>
Вы правы в своем предположении. Вам просто нужно указать имя url в href и передать параметр с помощью тега шаблона url.
<td><a href=“{% url ‘session-view’ session.id %}” class=“btn btn-primary”>Join now!</a></td>