Реверс для 'delete_post' с аргументами '('',)' не найден. Проверен 1 шаблон(ы): ['article/(?P<pk>[0-9]+)/remove$'].
я создавал простой сайт блог и я создал кнопки для удаления7edit , но как только я пытаюсь сбросить приложение и перейти туда я получаю эту ошибку (название)
вот мой код view.py:
from django.views.generic import ListView
from . models import Article
from django.views.generic import ListView, DetailView, CreateView, UpdateView,
DeleteView
from .forms import PostForm, EditForm
from django.urls import reverse_lazy
class ArticleListView(ListView):
model = Article
template_name = 'home.html'
class ArticleDetailView(DetailView):
model = Article
template_name = 'detail.html'
class AddPostView(CreateView):
model = Article
form_class = PostForm
template_name = 'add_post.html'
#fields = '__all__'
#fields = ('title', 'body')
class UpdatePostView(UpdateView):
model = Article
form_class = EditForm
template_name = 'update_post.html'
#fields = ['title', 'title_tag', 'body']
class DeletePostView(DeleteView):
model = Article
template_name = 'delete_post.html'
success_url = reverse_lazy('home')
urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.ArticleListView.as_view(), name='home'),
path('article/<int:pk>', views.ArticleDetailView.as_view(), name='detail'),
path('add_post/', views.AddPostView.as_view(), name='add_post'),
path('article/edit/<int:pk>', views.UpdatePostView.as_view(), name='update_post'),
path('article/<int:pk>/remove', views.DeletePostView.as_view(), name='delete_post'),
]
templates delete_post.html:
{% extends 'base.html' %}
{% block title %}Delete Blog Post{% endblock %}
{% block content %}
<h1>Delete Post...</h1>
<br/><br/>
<hr3>Delete: {{ post.title }}</hr3>
<br/>
<div class="mb-3">
<form method="POST">{% csrf_token %}
<strong>Are you sure?</strong><br/><br/>
<button class="btn btn-secondary">Delete Post!</button>
</div>
{% endblock %}
templtes update_post.html:
{% extends 'base.html' %}
{% block title %}Edit Blog Post{% endblock %}
{% block content %}
<h1>Update Post...</h1>
<br/><br/>
<div class="mb-3">
<form method="POST">{% csrf_token %}
{{ form.as_p }}
<button class="btn btn-secondary">Update</button>
</div>
{% endblock %}
помогите мне пожалуйста, я новичок в django и я еще ничего не знаю -----------------------------------------------------------
Вы удалили url article/<int:pk>/remove
, но я видел, что вы набрали article/1/
.
path('article/<int:pk>/remove', views.DeletePostView.as_view(), name='delete_post')
Вам нужно набрать article/1/remove
.