我模糊地做着django教程。
<form action="." method="POST">
<input type="text" name="language" value="{{ fbuser.language|escape }}" />
<input type="submit" value="Change" />
</form>
def canvas(request):
if request.POST != {}: assert False, request.POST
断言永远不会触发,我的request.POST
始终为{}
,页面呈现就像我刷新它一样。我很确定我的画布被调用,因为如果我将form action属性更改为“foobar”,我会收到django错误:
Page not found (404)
Request Method: POST
Request URL: http://192.168.0.106:8000/fbsample/canvas/foobar
编辑:我现在尝试将我的回发网址转到'foobar /'。在服务器日志中,我看到帖子发生了,但它重定向到画布?并且foobar从未被称为?我开始怀疑pyfacebook中间件正在做一些时髦的事情,如果你们能确认这种行为是疯狂的话会有所帮助......
答案 0 :(得分:2)
request.POST
计算为False
如果它为空,但这不是dict
对象,它可能不支持对普通dict
对象的比较操作。如果你这样做会更好:
if request.POST:
assert False