我创建了一个视图以通过模板删除对象,但似乎我缺少了一些我无法完全放在一起的东西
def product_delete_view(request, id):
obj = get_object_or_404(Product, id=id)
if request.method == "POST":
obj.delete()
return redirect('../../')
context = {
"obj": obj
}
return render(request, "products/product_delete.html", context)
from django.contrib import admin
from django.urls import path
from pages.views import home_view, contact_view, about_view, social_view, services_view
#from products.views import product_detail_view, product_create_view, render_intial_data
from products.views import render_intial_data, dynamic_lookup_view, product_delete_view
urlpatterns = [
path('admin/', admin.site.urls),
path('', home_view, name='home'),
path('contact/', contact_view, name='contact'),
path('about/', about_view, name='about'),
path('services/', services_view, name='services'),
path('social/', social_view, name='social'),
#path('product/detail', product_detail_view, name='pdtDetail'),
#path('product/create', product_create_view, name='pdtCreate')
path('product/create', render_intial_data, name='pdtCreate'),
path('product/<int:id>', dynamic_lookup_view, name="pdt"),
path('product/<int:id>/delete', product_delete_view, name='pdtDelete')
]
{% extends 'base.html' %} {% block content %}
<form action="." method="POST">
{% csrf_token %}
<h1>Do you want to delete the product "{{ obj.title }}"</h1>
<p><input type="submit" value="Yes" /> <a href="../">Cancel</a></p>
</form>
{% endblock %}
您的模式不以斜杠结尾。尝试向其添加结尾斜杠:
path('product/create/', render_intial_data, name='pdtCreate'),
path('product/<int:id>/', dynamic_lookup_view, name="pdt"),
path('product/<int:id>/delete/', product_delete_view, name='pdtDelete')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句