如何从(模型)MultipleChoiceField中选择获取选项顺序?

2024-06-09 07:25:12 发布

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

我需要以某种方式从modelmultipechoicefield(在我的例子中)获取选项的顺序。我指的是通过JavaScript可以轻松获得的选项索引。我想要做到这一点,我需要我已经创建的自定义字段。它使用自定义小部件,允许用户重新排序字段选择的选项

class DataTypeForm(forms.ModelForm):
    file = forms.FileField()
    headers = OrderedModelMultipleChoiceField(queryset=Header.objects.none())

    class Meta:
        model = DataType
        fields = ("file", "headers")

    def __init__(self, *args, **kwargs):
        super(DataTypeForm, self).__init__(*args, **kwargs)
        self.fields["headers"].queryset = Header.objects.filter(data_type=self.instance)
class OrderedModelMultipleChoiceField(forms.ModelMultipleChoiceField):
    widget = OrderableSelectMultiple
class OrderableSelectMultiple(forms.SelectMultiple):
    template_name = "django/forms/widgets/orderable_select.html"

    class Media:
        css = {
            "all": ("orderable-select-multiple.css",),
        }
        js = ("orderable-select-multiple.js",)

我如何才能访问这些属性


Tags: selffieldsobjectsinit选项formsselectclass