我应该使用request.POST或form.cleaned_data中的文本

use*_*451 4 django django-forms django-views

这可能听起来像一个微不足道的问题,但这对我来说是一场战斗.

对于表单和点击提交,是否应该使用form.cleaned_data访问表单数据或查找request.POST

人们通常唯一要做的request.POST就是查找提交按钮.但是如果我创建一个提交按钮作为一个小部件,我也可以在form.cleaned_data中查找它.问题是,其他表格数据呢?它们也可以查找request.POST.

谢谢.

Reg*_*ser 6

例如你可以这样做:

class YourForm(forms.Form):
    test = forms.CharField(label='A test label', widget=forms.Textarea(attrs={"placeholder":"Your Placeholder", "rows":6, "cols":45}), max_length=150)


if request.method == "POST":
    form = YourForm(request.POST)
    if form.is_valid():
        cleaned_test = form.cleaned_data["test"]
Run Code Online (Sandbox Code Playgroud)


Viv*_*k S 5

虽然您可以直接访问request.POST,但最好访问form.cleaned_data.此数据不仅已经过验证,而且还将为您转换为相关的Python类型.