python - Django Post Request 返回 405 Method not allowed 错误
问题描述
我正在开发一个 Django(1.10) 项目,在该项目中我向视图发送发布请求,但它返回405 Method not allowed
错误。
这是我的urls.py:
urlpatterns = [
url('admin/', admin.site.urls),
url(r'$', TemplateView.as_view(template_name='Unmundonuevo/index.html')),
url(r'^contactUs/$', views.ContactFormView.as_view(), name='ContactUs'),
]
这是我的 HTML 表单:
<form method="post" action="{% url 'ContactUs' %}">
{% csrf_token %}
<div class="form-group">
<input type="text" name="name" id="id_name" class="form-control input-field" placeholder="Name" required="">
<input type="email" name="email" id="id_email" class="form-control input-field" placeholder="Email ID" required="">
<input type="text" name="subject" id="id_subject" class="form-control input-field" placeholder="Subject" required="">
</div>
<textarea name="message" id="message" class="textarea-field form-control" rows="4" placeholder="Enter your message" required=""></textarea>
<button type="submit" id="btn" value="Submit" class="btn center-block">Send message</button>
</form>
这是我的forms.py:
class ContactForm(forms.ModelForm):
class Meta:
fields = ('name', 'email', 'subject', 'message')
model = models.ContactModel
而且,这是我的views.py:
class ContactFormView(CreateView):
def post(self, request, *args, **kwargs):
if request.method == 'POST':
print('Get post req')
form = ContactForm()
if form.is_valid():
print('Valid form')
return 'Success'
return 'failed'
它返回:
不允许的方法 (POST):/contactUs/
[11/Aug/2018 05:47:58]“POST /contactUs/HTTP/1.1”405 0
请帮帮我!
提前致谢!
解决方案
推荐阅读
- android - 用于 android 模拟器的 Charles “SSL Proxying not Enabled for this Host”,当它真的是
- node.js - cpanel终端错误:bash fork retry no child processes
- python - 加载 scikit-learn KNNImputer 时出错
- java - Android 记住黑暗主题
- html - 制作文字适合剪辑路径的标题图像
- computer-vision - 如何在暗网架构上进行批量检测?
- javascript - 查找由机器人创建的嵌入 (discord.js)
- typescript - 如何推断正确的类型
- python-3.x - 理解 Python 中的浅拷贝
- android - 无法使用 Hilt 创建 MainViewModel 的实例