Django中无POST数据

0 投票
2 回答
616 浏览
提问于 2025-04-18 10:29

我在使用Django的时候遇到了一些问题,特别是在提交数据方面。我的HTML代码大致是这样的:

<form action="/bend_calculation" method="POST">
 <table><tbody>
<tr>
 <td><label style="display:inline-block">Pipeline Diameter (mm)</label> </td>
 <td> </td>
<td><input type="text" name="D" value=""/></td>
 </tr>

 <input style="width:10em;background-color:#6986DB" type="submit" id ="sbbtn" value="Submit"></td>  

我在查看Django的函数是这样的:

  request.POST.get('D')

但是表单返回的结果是“None”。整个程序都已经设置为不需要CSRF保护了!

非常感谢你的帮助。

2 个回答

0

也许你应该用下面这个标签来结束你的表单:

</form>

你有没有测试过下面这个条件呢?

if request.POST:
0

你可能把 APPEND_SLASH 这个设置开着了,默认就是开着的。这意味着当你向 "/bend_calculation" 发送数据时,Django 会自动把你重定向到 "/bend_calculation/",而重定向总是用 GET 方式。你应该确保向 "/bend_calculation/" 发送数据,或者更好的是,使用 {% url %} 标签来动态生成这个网址。

撰写回答