页面无法正常工作,在提交表单时出现405错误?

时间:2020-07-16 18:11:10

标签: html django

我的网址视图:

urlpatterns = [
    re_path(r'^$', views.Tweet_List_view.as_view(), name='list'),
    # re_path(r'^$',views.listview, name='list'),
    re_path(r'^(?P<pk>\d+)/$', views.Tweet_Detail_View.as_view(), name='detail'),
    re_path(r'^(?P<pk>\d+)/delete$',
            views.Tweet_Delete_View.as_view(), name='delete'),
    re_path(r'^(?P<pk>\d+)/edit/$',
            views.Tweet_Update_View.as_view(), name='update'),
    re_path(r'^create/$', views.Tweet_Create_View.as_view(), name='create'),
]

我的views.py:

class Tweet_List_view(ListView):
    # template_name = 'tweet/tweet_list.html'
    model = Tweet

    def get_queryset(self, *args, **kwargs):
        queryset = Tweet.objects.all()
        # print(self.request.GET)
        if self.request.GET:
            q = self.request.GET.get('q')
            queryset = Tweet.objects.filter(
                Q(content__icontains=q) |
                Q(user__username__icontains=q)
            )
        return queryset

    def get_context_data(self, *args, **kwargs):
        context = super().get_context_data(*args, **kwargs)
        # print(self.kwargs)
        context['tweet_form'] = TweetModelForm
        context['create_url'] = reverse('list')
        return context

我的html文件:

{% block content %}
<br/>
<div class="row">
  <div class="col-sm-3 col-xs--12" style="background-color: red; height: 200px; border-radius: 30;">
    {{request.user}}
  </div>
<div class="col-sm-9" >
{% if not request.GET.q %}
<div>
<form method="POST" action={{create_url}} >
{% csrf_token %}
    {{ tweet_form.as_p }}
    <input type="submit" value="tweet"  class="btn btn-primary" >
</form>
</div>
<hr/>
{% endif %}

我的推特列表视图中有一个表单,该表单提交后会重定向到当前的推特列表视图,因此在转到该页面时,它显示http 405错误。我已经看到具有相同的网址会显示此类错误,但是我具有不同的网址格式。

0 个答案:

没有答案