migrations.CreateModel(
name='BasketballScore',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('match_played', models.IntegerField(default='0')),
('lose', models.IntegerField(default='0')),
('win', models.IntegerField(default='0')),
('points', models.IntegerField(default='0')),
('team', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='teams_basketball', to='Schedule.Team')),
],
),
Это часть из моей папки миграции, думаю, это подтверждает, что моя BasketballScore модель перенесена нормально.
class BasketballScore(models.Model):
team = models.ForeignKey(Team, related_name='teams_basketball', on_delete=models.CASCADE)
match_played = models.IntegerField(default='0')
lose = models.IntegerField(default='0')
win = models.IntegerField(default='0')
points = models.IntegerField(default='0')
Это актуальная модель BasketballScore .
class BasketballScoreView(generic.ListView):
context_object_name = 'matches'
template_name = 'Schedule/basketball_score.html'
queryset = BasketballScore.objects.all()
def get_queryset(self):
return BasketballScore.objects.all().order_by('-points')
Это соответствующий класс BasketballScoreView в views.py.
{% extends 'Schedule/base.html' %}
{% block content %}
<div class="container">
<p><button onclick="window.location='{% url 'index' %}'" class="btn btn-default">Go Back</button></p>
<div class="table-responsive">
<table class="table table-bordered table-hover">
<tr>
<th>Teams</th>
<th>Match</th>
<th>Win</th>
<th>Lose</th>
<th>Points</th>
</tr>
{% for match in matches %}
<tr>
<td>
<div style="width='100';height='20'"><img src="{{ match.team.image.url }}"></div>
{{match.team}}
</td>
<td><div class="text-center">{{match.match_played}}</div></td>
<td><div class="text-center">{{match.win}}</div></td>
<td><div class="text-center">{{match.lose}}</div></td>
<td><div class="text-center">{{match.points}}</div></td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock %}
Теперь это страница basket_score.html .
<!DOCTYPE html>
<html lang="en">
<head>
<style>
.horizontal { display: inline; background-color: lightgray; }
</style>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Schedule</title>
{% load static %}
<!-- <link rel="stylesheet" href="{% static 'Schedule/css/bootstrap.css' %}" />
<link rel="stylesheet" href="{% static 'Schedule/css/style.css' %}" /> -->
{% block title %}
{% endblock %}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
</head>
<body>
{% block content %}
{% endblock %}
</body>
<!-- <script src="{% static 'Schedule/js/calendar.js' %}"></script> -->
<!-- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> -->
<script>
var csrf_token = '{{ csrf_token }}'
</script>
</html>
Теперь вышеприведенный код base.html , из которого я расширил basket_score.html . Поэтому, когда я нажимаю на кнопку Score Table , которая выводит меня на страницу basket_score.html, за исключением заголовка таблицы, который составляет th , ничего не отображается, то есть нет название команды и т. д. Теперь я добавляю соответствующий urls.py:
path('match/basketball_score/', views.BasketballScoreView.as_view(), name='basketball_score'),
Любая помощь будет оценена! :)