Как получить массив int в форме django modelmultiplechoicefield
вот мое значение multiselect(vue js) в шаблоне:
....
<input type="hidden" name="related_parties" id="id_related_party" :value="[3]">
....
В приведенном выше коде, :value на самом деле является вычисленным значением vue js, для простоты используем [3] ..
в моих формах django, мое поле:
...
related_parties = forms.ModelMultipleChoiceField(
required=False,
queryset=Party.objects.none())
...
Позже в форме Django я в цикле просматриваю значения, полученные из шаблона, чтобы создать список, как показано ниже:
...
for item in self.initial.get('related_parties'):
""
if item.id:
party_ids.append(item.id)
...
после этого я присваиваю значение queryset в форме Django, как показано ниже:
...
if party_ids:
self.fields['related_parties'].queryset = Party.objects.filter(id__in=party_ids or None)
else:
self.fields['related_parties'].queryset = None
...
Эта установка отлично работает, если просто :value="[3]" ,,,, но в случае различных значений, таких как "[3,2]", я получаю ошибку валидации: "3,4" is not a valid value.
нужно ли мне использовать другое поле django в формах django? как я могу избежать ошибки валидации в этом случае?