Пытаюсь сформировать вывод 2 страниц. Первая выводит список всех моделей определенного города, вторая - конкретную модель.
При попытке вывода модели в html шаблоне появляется ошибка. При открытии страницы (используем ф-ию viewtrainers )по адресу site.ru/trainers/city все отрабатывает, появляется список участников. При открытии (используем функцию viewperson) по адресу site.ru/trainers/name получаю ошибку
DoesNotExist at /trainers/vasyuta-anton/
Cities matching query does not exist.
В traceback ругается на
trainers_town = Cities.objects.get(slug = slug)
Исходники такие
urls.py
from django.conf.urls import url, include
from trainers.views import viewtrainers, viewperson
app_name = 'trainers'
urlpatterns = [
url(r'^(?P<slug>[-\w]+)/$', viewtrainers, name='viewtrainers'),
url(r'^(?P<slug>[-\w]+)/$', viewperson, name='viewperson'),
]
views.py
from django.shortcuts import render
from trainers.models import Trainer, Cities
# Вывод списка всех участников привязанных к определенному городу
def viewtrainers(request, slug):
trainers_town = Cities.objects.get(slug = slug)
trainers = Trainer.objects.all()
return render(request, "trainers.html", {'trainers_town':trainers_town, 'trainers':trainers })
# Вывод конкретного участника
def viewperson(request, slug):
trainer = Trainer.objects.get(slug = slug)
return render(request, "trainer_person.html", {'trainer':trainer})
models.py
from django.db import models
from django.utils.text import slugify
class Cities(models.Model):
city = models.CharField(max_length=50, verbose_name="Город")
slug = models.SlugField(unique = True, default = '')
def __str__(self):
return self.city
class Trainer(models.Model):
city = models.ForeignKey('Cities', verbose_name="Город")
name = models.CharField(max_length=100, verbose_name="Ф.И.О")
slug = models.SlugField(unique = True, default = '')
def __str__(self):
return self.name