Python Django手动验证表单字段

Python Django手动验证表单字段,python,django,django-forms,django-validation,Python,Django,Django Forms,Django Validation,我有一个动态生成的表单。我无法预测有多少文本输入或多项选择将包括在手之前。因此,我不能使用ModelForm或任何类似的工具 我想知道是否可以利用Django字段中的内置验证代码并以某种方式手动应用它们,因为我可以确定用户输入的类型(例如,是否为文本、单选按钮、复选框等)。像这样的东西会很棒: if type == 'Text': #perform validation #get clean data elif type == 'Checkbox': #perform v

我有一个动态生成的表单。我无法预测有多少文本输入或多项选择将包括在手之前。因此,我不能使用
ModelForm
或任何类似的工具

我想知道是否可以利用Django字段中的内置验证代码并以某种方式手动应用它们,因为我可以确定用户输入的类型(例如,是否为文本、单选按钮、复选框等)。像这样的东西会很棒:

if type == 'Text':
    #perform validation
    #get clean data
elif type == 'Checkbox':
    #perform validation 
    #get clean data

更新:我的网站允许用户根据自己的需要生成调查。例如,用户决定创建一个包含两个问题的调查:

  • 你叫什么名字
  • 你的智能手机是什么品牌的?A) (B)宏达电
  • 第一个问题是
    ,第二个问题是

    有关生成的问题类型的信息存储在数据库中。所以我会在DB中有这样的行来描述这个问题:

    ID类型文本
    1文本你叫什么名字?
    你叫什么名字

    当调查上线并由用户填写时。我需要验证他们的输入。我如何利用Django的内置验证功能来处理这种情况?

    我建议您使用,因为它们正是出于您所说的原因:处理任意数量的字段。这样,您仍然可以使用Django的验证(这非常方便)

    如果你发布一个你正在处理的示例表单,我将能够起草一个表单集示例

    更新:啊,你需要一个调查功能吗?这是一个完全不同的野兽。我想不出有什么理由不利用其中一个。该软件包似乎是最具特色和最成熟的软件包。和Django一样,您可以相对轻松地定制它


    如果我还没说服你,就看看它的档案吧。你真的有时间和意愿重新实现所有这些吗?

    嗨,Alex,我在问题中添加了更多描述。非常感谢你的帮助。但我想实现的是,在不指定任何表单的情况下,利用Django对单个输入字段的验证。我不需要现有的调查包。我只是想知道,如果提交了一个字符串get,如何验证它?Django已经做到了。必须有一些软件包允许你这么做。Django的验证是通过表单完成的。真的,这些表格是用来验证的。例如,他们只需要为每个字段获取验证器,运行它并设置错误,以便您可以在HTML中处理它。Django中没有其他“验证框架”或其他东西。如果要清理数据,只需使用表单即可。您似乎遇到的问题是为任意数量的字段构造一个动态表单。这显然是一项可行的任务,例如,请参阅。您提供的链接肯定很有帮助。我将根据这些信息看看如何进行。谢谢