Django Нет обратного соответствия, контекст ломает мой код
Я сузил круг поиска до того, что когда я добавляю контекст в строку return render(request), мой код ломается, но я не могу понять почему. Я не уверен, какие ошибки нужно выдать или какие части моего кода вам нужны, но вот, пожалуйста.
NoReverseMatch в /gallery/gallery
Не найдено обратное соответствие для 'photo' с аргументами '(2,)'. Проверено 1 шаблон(ы): ['gallery/photo'].
Метод запроса: GET
URL запроса: http://127.0.0.1:8000/gallery/gallery.
Версия Django: 3.2.3
Тип исключения: NoReverseMatch
Значение исключения:
Не найдено обратного соответствия для 'photo' с аргументами '(2,)'. Проверен 1 шаблон(ы): ['gallery/photo'].
Расположение исключения: C:\Users\ScrillaGorilla\PycharmProjects\Mustache Website\venv\lib\site-packages\django\urls\resolvers.py, line 694, in _reverse_with_prefix
Python Executable: C:\Users\ScrillaGorilla\PycharmProjects\Mustache Website\venv\Scripts\python.exe
Версия Python: 3.8.6
Python Path:
['C:\Users\ScrillaGorilla\PycharmProjects\Mustache Website\mustache',
'C:\Users\ScrillaGorilla\AppData\Local\Programs\Python\Python38\python38.zip',
'C:\Users\ScrillaGorilla\AppData\Local\Programs\Python\Python38\DLLs',
'C:\Users\ScrillaGorilla\AppData\Local\Programs\Python\Python38\lib',
'C:\Users\ScrillaGorilla\AppData\Local\Programs\Python\Python38',
'C:\Users\ScrillaGorilla\PycharmProjects\Mustache Website\venv',
'C:\Users\ScrillaGorilla\PycharmProjects\Mustache '
'Website\venv\lib\site-packages']
Время сервера: Thu, 16 Sep 2021 06:49:31 +0000
и это мой код. если это поможет. это мой файл views.py.
from django.shortcuts import render
from .models import Category, Photo
from django.db import models
# Create your views here.
def photogallery(request):
categories = Category.objects.all()
photos = Photo.objects.all()
context = {'categories': categories, 'photos': photos}
return render(request, 'picturegallery/pictures.html', context)
def viewPhoto(request, pk):
photo = Photo.objects.get(id=pk)
return render(request,'picturegallery/photo.html', {'photo': photo})
def addPhoto(request):
return render(request,'picturegallery/ADD.html')
и это мой файл models.py.
from django.db import models
# Create your models here.
class Category(models.Model):
name = models.CharField(max_length=100, null=False, blank=False)
def __str__(self):
return self.name
class Photo(models.Model):
category = models.ForeignKey(Category, on_delete=models.SET_NULL, null=True, blank=True)
image = models.ImageField(null=False, blank=False)
description = models.CharField(max_length=500, null=False, blank=False)
def __str__(self):
return self.description