Я новичок в Django, и у меня возникла проблема с переносом моих материалов в начало моего сайта.
Я хочу создать сайт в стиле фэнтези. Моя главная страница будет отображать список игроков НХЛ. Эти игроки будут выбраны пользователем и добавлены в их команду по порядку.
Моя проблема заключается в следующем: я хочу, чтобы модал всплывающего стиля открывался, когда пользователь нажимает на игрока на главной странице. Этот модал будет содержать подтверждение до того, как указанный c игрок будет добавлен в команду пользователя.
Вот моя модель игрока:
class Player(models.Model):
name = models.CharField(max_length=30)
position = models.CharField(max_length=5)
Вот мой основной вид страницы:
def main_page(request):
players = Player.objects.all()
my_dict = {"players":players}
return render(request, 'my_app/main_page.html', context=my_dict)
Вот мой шаблон для главной страницы:
{% extends "my_app/base.html" %}
{% block body_block %}
<button onclick="document.getElementById({{player.name}}).style.display='block'" class="w3-button w3-black">Open Modal</button>
<div class="w3-modal-content">
<div class="w3-container">
<span onclick="document.getElementById({{player.name}}).style.display='none'" class="w3-button w3-display-topright">×</span>
<p>{{player.position}}</p>
</div>
</div>
{% for player in players %}
<tr>
<th>{{player.name}}</th>
<th onclick="document.getElementById({{player.name}}).style.display='block'" class="w3-button w3-black" width="100%">Open Modal</th>
</tr>
{% endif %}
{% endblock %}
Как видите, мне бы хотелось, чтобы в модальном всплывающем окне отображалась позиция игрока.
К сожалению, Мало того, что модал не работает, я понятия не имею, как заставить его отображать атрибуты моей модели Player.
Кто-нибудь знает, как изменить мой html, чтобы исправить модальность?
Большое спасибо за вашу помощь!
РЕДАКТИРОВАТЬ: нашел очень интересный ответ по Как интегрировать Ajax с Django приложениями?