NoReverseMatch в /news/
Я просмотрел много вопросов, но так и не нашел ответа.
NoReverseMatch at /news/ Обратное соответствие для 'post_detail' не найдено. 'post_detail' не является допустимым именем функции представления или шаблона. Метод запроса: GET URL запроса: http://127.0.0.1:8000/news/ Версия Django: 3.2.8 Тип исключения: NoReverseMatch Значение исключения:
.
Не найдено обратное соответствие для 'post_detail'. 'post_detail' не является допустимой функцией представления или именем шаблона. Местоположение исключения: C:\Users\retar\anaconda3\envs\pc\lib\site-packages\django\urls\resolvers.py, line 694, in _reverse_with_prefix Python Executable: C:\Users\retar\anaconda3\envs\pc\python.exe Версия Python: 3.9.6 Python Path:
['C:\Users\retar\Desktop\polygon\fotonika', 'C:\Users\retar\anaconda3\envs\pc\python39.zip', 'C:\Users\retar\anaconda3\envs\pc\DLLs', 'C:\Users\retar\anaconda3\envs\pc\lib', 'C:\Users\retar\anaconda3\envs\pc', 'C:\Users\retar\anaconda3\envs\pc\lib\site-packages']. Время сервера: Fri, 08 Oct 2021 13:15:03 +0000
models.py
class Post(models.Model):
title = models.CharField(max_length=255)
content = models.TextField(blank=True)
created_at = models.DateTimeField(auto_now=True)
photo = models.ImageField(upload_to='photos/%Y/%m/%d/',blank=True)
is_published = models.BooleanField(default=True)
category = models.ForeignKey('Category',on_delete=models.PROTECT, null=True,)
def get_absolute_url(self):
return reverse('post_detail', kwargs={"pk": self.pk})
def __str__(self):
return self.title
news.urls
from django.urls import path
from . import views
app_name = "news"
urlpatterns = [
path('',views.PostListView.as_view(),name='all_news'),
path('<int:pk>/', views.PostDetailView.as_view(), name='post_detail'),
urls.py
from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path,include
from fapp import views
urlpatterns = [
path('admin/', admin.site.urls),
path('',views.HomePage.as_view(),name='home'),
path('news/',include('news.urls')),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
all_news.html
{% extends 'base.html' %}
{% block content %}<h1> NEWS PAGE</h1>
{% for post in posts %}
<a href="{{ post.get_absolute_url }}">{{post.title}}</a>
{% endfor %}
{% endblock content %}
post_detail.html
{% extends 'base.html' %}
{% block content %}
<h2>{{ post.title }}</h2>
<p>{{ post.content }}</p>
<img src="{{ post.photo.url }}" alt="photo">
{% endblock content %}