Реверс для 'post_detail' не найден. 'post_detail' не является допустимой функцией представления или именем шаблона. Я пробовал другие решения, но ни одно из них не работает

Я делаю блог на Django и столкнулся с этой ошибкой. Когда вы нажимаете кнопку submit, появляется эта ошибка:

Reverse for 'post_detail' not found. 'post_detail' is not a valid view function or pattern name.

Если вы хотите увидеть ошибку сами, зайдите на mayfly404.com, кликните на сообщение, а затем попробуйте прокомментировать. Вот мой код:

blog/views.py

blog/urls.py

from django.contrib import admin
from django.contrib.auth import views as auth_views
from django.urls import path, include
from users import views as user_views

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('admin/', admin.site.urls),
    path('register/', user_views.register, name='register'),
    path('profile/', user_views.profile, name='profile'),
    path('profile/<int:pk>/', user_views.profile, name='profile_pk'),
    path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'),
    path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'),
    path('', include('blog.urls')),

]

if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

blog/forms.py

from django.forms import ModelForm
from django.core.exceptions import ValidationError
from .models import Comment

class CommentForm(ModelForm):
    class Meta:
        model = Comment
        fields = ['name', 'comment']

    def __init__(self, *args, **kwargs):
        """Save the request with the form so it can be accessed in clean_*()"""
        self.request = kwargs.pop('request', None)
        super(CommentForm, self).__init__(*args, **kwargs)

    def clean_name(self):
        """Make sure people don't use my name"""
        data = self.cleaned_data['name']
        if not self.request.user.is_authenticated and data.lower().strip() == 'samuel':
            raise ValidationError("Sorry, you cannot use this name.")
        return data

blog/templates/blog/post_detail.html

{% extends "blog/base.html" %}
{% block content %}
    <head>
        <!-- Ezoic Code -->
        <script src="//www.ezojs.com/basicads.js?d=mayfly404.com" type="text/javascript"></script>
        <!-- Ezoic Code -->
    </head>
    <article class="media content-section">
        <img class="rounded-circle article-img" src="{{ object.author.profile.image.url }}" alt="{{ object.author }}">
        <div class="media-body">
        <div class="article-metadata">
            <a class="mr-2" href="#">{{ object.author }}</a>
            <small class="text-muted">{{ object.date_objected }}</small>
            {% if object.author == user %}
                <a class="btn btn-secondary btn-sm mt-1 mb-1" href="{% url 'post-update' object.id %}">Update Post</a>
                <a class="btn btn-danger btn-sm mt-1 mb-1" href="{% url 'post-delete' object.id %}">Delete Post</a>
            {% endif %}
        </div>
        <h2 class="article-title">{{ object.title }}</h2>
        <p class="article-content">{{ object.content|safe }}</p>
        <img src="{{ post.image }}" width="250px" onerror="this.style.display='none'">

        </div>
    </article>
<h2 id="comments">Comments</h2>
{% for comment in post.comment_set.all %}
<b>{{ comment.name }}</b> said <b>{{ comment.created_on|timesince }} ago</b>
<p>{{ comment.comment }}</p>
{% empty %}
<p>Feel free to leave the first comment!</p>
{% endfor %}
<hr>
<h3>Add a comment</h3>
<form action="" method="post">
    {% csrf_token %}
    {{ form.as_p }}
    <button type="submit">Submit</button>
</form>
{% endblock content %}

Ошибка более подробно: картинка

Вернуться на верх