Добрый день ЛОР. Имеется модель:
class Loureats(models.Model):
class Meta():
db_table='loureats'
verbose_name='Лоуреат'
verbose_name_plural='Лоуреати'
year = models.ForeignKey(LoureatsYear, on_delete=models.CASCADE, blank=True, null=True)
name = models.CharField(verbose_name='Название', max_length=400)
logo = ProcessedImageField(verbose_name='Логотип', upload_to='loureats/', processors=[ResizeToFit(300)], format='JPEG',
options={'quality': 90})
description = models.TextField(verbose_name='О луореате')
photo = ProcessedImageField(upload_to='loureats/photo/', processors=[ResizeToFit(300)], format='JPEG',
options={'quality': 90})
create = models.DateTimeField(verbose_name='Дата создания', default=timezone.now)
update = models.DateTimeField(verbose_name='Дата обновления', auto_now=True)
moder = models.BooleanField(verbose_name='Модерация', default=False)
def __str__(self):
return self.name
Вьюха:
def loureats_list(reguest, slug):
year = LoureatsYear.objects.get(slug=slug)
loureats = Loureats.objects.filter(year=year)
return render(reguest, 'loureats/loureats_list.html', {
'year': year,
'loureats': loureats}
)
def loureats_detail(request, pk):
template='loureats/loureats_detail.html'
loureats_detail = get_object_or_404(Loureats, pk=pk)
return render(request, template, {'loureats_detail': loureats_detail})
urls:
path('loureats/<slug>/', views.loureats_list, name='loureats_list'),
path('loureats/<pk>/', views.loureats_detail, name='loureats_detail'),
И ссылка в шаблоне для перехода к детальному описанию:
{% for item in loureats %}
<h1><a href="{% url 'base:loureats_detail' pk=loureats_detail.pk %}">{{ item.name }}</a></h1>
{% endfor %}
При переходе loureats/<slug>/ получаю такую ошибку:
Reverse for 'loureats_detail' with keyword arguments '{'pk': "}' not found. 1 pattern(s) tried: ['loureats\\/(?P<pk>[^/]+)\\/$']
Новости вывожу таким же образом, и все работает. Что я делаю не так?