это моя модель, где у меня есть класс людей, где каждый человек в этом классе людей живет в зоне, это мой класс людей и класс зоны
class Zones(models.Model):
zone_name = models.CharField(max_length=120)
def __str__(self):
return self.zone_name
class People(models.Model):
first_name = models.CharField(max_length=120)
last_name = models.CharField(max_length=120)
address = models.TextField()
phone_number = models.CharField(max_length=12)
national_number = models.CharField(max_length=14)
no_of_members = models.PositiveIntegerField(null=False, blank=False)
zone = models.ForeignKey(Zones, null=False, blank=False, on_delete=models.CASCADE)
def __str__(self):
return self.first_name
и как я хочу показать им в маршрут / зона будет списком моих зон, и когда пользователь нажмет на любую из этих зон, я хочу, чтобы он увидел список людей, которые находятся в этой зоне
вот мои представления
class PeopleView(ListView):
model = People
template_name = "people.html"
context_object_name = 'people_list'
class ZoneView(ListView):
model = Zones
template_name = "zones.html"
context_object_name = 'zones_list'
class PeopleDetailView(DetailView):
model = People
template_name = "people_detail.html"
и вот мои URL
urlpatterns = [
path('admin/', admin.site.urls),
path('people/', PeopleView.as_view(), name='people'),
path('zone/', ZoneView.as_view(), name='zone'),
path('zone/<int:pk>/', PeopleDetailView.as_view(), name='detail'),
]
, а вот мой html шаблон для зоны
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Zones List</title>
</head>
<body>
<h1>Zones List</h1>
<ul>
{% for zone in zones_list %}
<a href="#"><li>{{ zone }}</li></a>
{% endfor %}
</ul>
</body>
</html>