Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 这一页不是’;如果问题仍然存在,请联系网站所有者。试图在django中修复此问题时出现HTTP错误405?_Python_Django_Django Models_Django Views_Django Templates - Fatal编程技术网

Python 这一页不是’;如果问题仍然存在,请联系网站所有者。试图在django中修复此问题时出现HTTP错误405?

Python 这一页不是’;如果问题仍然存在,请联系网站所有者。试图在django中修复此问题时出现HTTP错误405?,python,django,django-models,django-views,django-templates,Python,Django,Django Models,Django Views,Django Templates,当我单击“删除”按钮时,我收到一个错误:此页面现在无法工作问题仍然存在,请与网站所有者联系。HTTP错误405 这是我的view.py文件: from django.shortcuts import render,get_object_or_404 from django.http import HttpResponse from django.views.generic import ListView,DetailView, CreateView, UpdateView, DeleteView

当我单击“删除”按钮时,我收到一个错误:此页面现在无法工作问题仍然存在,请与网站所有者联系。HTTP错误405

这是我的view.py文件:

from django.shortcuts import render,get_object_or_404
from django.http import HttpResponse
from django.views.generic import ListView,DetailView, CreateView, UpdateView, DeleteView  
from .models import Post, TaskCategory
from .forms import PostForm
from django.urls import reverse_lazy

class DeletePostView(DetailView):
      model = Post
      template_name = 'delete_post.html'
      success_url = reverse_lazy('PostPage')
from django.urls import path
# from . import views
from .views import PostHomeView,PostDetail,NavFooter,PostPageView,AddPost,UpdatePost,DeletePostView

urlpatterns = [
path('', PostHomeView.as_view(), name ='home'),
path('PostDetail/<int:pk>', PostDetail.as_view(), name ='post_detail'),
path('PostPage/', PostPageView, name ='post_page'),
path('AddPost/', AddPost.as_view(), name = 'add_post'),
path('PostDetail/UpdatePost/<int:pk>', UpdatePost.as_view(), name = 'update'),
path('DeletePost/<int:pk>/', DeletePostView.as_view(), name = 'delete'),
]
{% extends "nav_footer.html" %}
{% load static %}
{% block content %}

<div class="form-group">
   <p>{{ post.task_title }}</p>
   <p>{{ post.task_discription }}</p>
   <p>{{ post.recommended_tools }}</p>
   <p>{{ post.budget }}</p>
   <form method="post">
     {% csrf_token %}
     <button class="btn btn-secondary">Delete</button>
   </form>
 </div>
 {% endblock %}
url.py文件:

from django.shortcuts import render,get_object_or_404
from django.http import HttpResponse
from django.views.generic import ListView,DetailView, CreateView, UpdateView, DeleteView  
from .models import Post, TaskCategory
from .forms import PostForm
from django.urls import reverse_lazy

class DeletePostView(DetailView):
      model = Post
      template_name = 'delete_post.html'
      success_url = reverse_lazy('PostPage')
from django.urls import path
# from . import views
from .views import PostHomeView,PostDetail,NavFooter,PostPageView,AddPost,UpdatePost,DeletePostView

urlpatterns = [
path('', PostHomeView.as_view(), name ='home'),
path('PostDetail/<int:pk>', PostDetail.as_view(), name ='post_detail'),
path('PostPage/', PostPageView, name ='post_page'),
path('AddPost/', AddPost.as_view(), name = 'add_post'),
path('PostDetail/UpdatePost/<int:pk>', UpdatePost.as_view(), name = 'update'),
path('DeletePost/<int:pk>/', DeletePostView.as_view(), name = 'delete'),
]
{% extends "nav_footer.html" %}
{% load static %}
{% block content %}

<div class="form-group">
   <p>{{ post.task_title }}</p>
   <p>{{ post.task_discription }}</p>
   <p>{{ post.recommended_tools }}</p>
   <p>{{ post.budget }}</p>
   <form method="post">
     {% csrf_token %}
     <button class="btn btn-secondary">Delete</button>
   </form>
 </div>
 {% endblock %}
我认为问题出在反惰性函数的某个地方,我不确定HTTP错误405是否为“方法不允许”。这意味着您正试图执行一些未定义或不允许的操作

您的问题是您在“DeletePostView”中使用“DetailView”,它应该使用“DeleteView”

这里的问题是“DetailView”没有定义post方法