所以我在这个答案中看到了:
http://stackoverflow.com/a/11072057/1061426
有人说:
更改此行:
form = StatementForm(request.POST, initial={'time': d.strftime("%Y-%m-%d %H:%M:%S"), 'user':loggedin_user, 'views':0})
为此:
form = StatementForm(initial={'time': d.strftime("%Y-%m-%d %H:%M:%S"),'user':loggedin_user, 'views':0})
包含request.POST之间有什么区别?或者,更重要的是 - 如果值不是在request.POST中设置,但是包含在初始数组中,则X的值是什么,is_valid()方法见?
编辑:我想我要问的是〜哪个优先于上述?如果添加了request.POST和一个初始值,初始值是否会覆盖request.POST值?是否可以覆盖“空”值? (在我所涉及的问题中,作者错误地使用request.POST在方法为get时为StatementForm播种,这对他造成了问题。)答案 0 :(得分:2)
initial
是一个用于在运行时设置表单初始值的参数。
现在,request.POST
用于将表单绑定到发布数据。例如,在使用POST
从浏览器提交表单时,所有相关字段都将分配给form
request.POST
对象
如果未在表单中设置X,则该值取自初始值(如果存在)。
您可以阅读initial here