0

我在我的网站上使用包含标签和表单在页脚中添加了联系我们功能。它在除“主页”页面之外的所有页面上都运行良好,抛出此错误:

Method Not Allowed (POST): /
Method Not Allowed: /
[11/Jul/2020 01:31:18] "POST / HTTP/1.1" 405 0

以下是包含标签和表格:

@register.inclusion_tag('contact_us.html', takes_context=True)
def contact_form(context):
    request = context['request']
    context['success']=False
    if request.method == 'POST':
        form = ContactUsForm(request.POST)
        if form.is_valid():
            msg =form.save(commit=False)
            msg.contact_user =request.user
            msg.save()
            # messages.success(request, 'Your message has been successfully sent!')
            context['success']=True
    form = ContactUsForm()
    context['contact_form']=form
    return context
class ContactUsForm(forms.ModelForm):
    def __init__(self,*args,**kwargs):
        super(ContactUsForm,self).__init__(*args,**kwargs)
        self.fields['message'].widget.attrs['rows']=4
        self.fields['message'].widget.attrs['placeholder'] = 'Your Message'
        self.fields['message'].label =''

    class Meta:
        model =ContactUs
        fields =('message',)

以下是联系我们的 html 的样子:

{% load crispy_forms_tags %}
{% if success %}<div>Your Message has been sent Successfully!</div>{% endif %}
<form action="" method="POST" class="row mt-2">
    <div class="col-md-10">
        {% csrf_token %}
        {{contact_form|crispy}}
        </div>
        <div class="col-md-2">
        <button class="btn btn-brand ml-2" type="submit">Submit</button>
        </div>
</form>

它仅在主页上引发错误 405。

4

0 回答 0