Djang多输入

2024-04-18 19:08:12 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将多个对象id传递到Django表单中?有没有一种方法可以将包含多个对象id的JavaScript数组传入表单字段并在服务器端对其进行迭代?你知道吗


Tags: 对象django方法id表单服务器端数组javascript
2条回答

您可以使用CommaSeparatedIntegerField来存储id,如果您在JavaScript中动态填充数据,甚至可以使用HiddenInput小部件。你知道吗

在服务器端验证表单之后,您将能够遍历表单的cleaned_data中的整数列表。你知道吗

您可能需要创建一个新字段,并重写“to\u python”方法。你知道吗

下面的基本示例创建一个新的char字段,该字段接受包含以逗号分隔的id的字符串,并返回一个查询集。你知道吗

class MyField(forms.CharField):
    def to_python(self, value):
        ids = value.split(',')

        return MyModel.objects.filter(id__in=ids)

class MyForm(forms.Form):
    ids = MyField()

看一看 how validation work in Django。你知道吗

相关问题 更多 >