Форматирование поля модели ManyToMany в django-autocomplete-light

models.py

class InvestmentGroup(models.Model):
    name = models.CharField(max_length=200, blank=True, null=True)
    persons = models.ManyToManyField('Person', blank=True, related_name='investment_groups')
    lead_investor = models.ForeignKey(
        'Person', blank=True, null=True, on_delete=models.CASCADE, related_name='lead_investment_groups'
    )

forms.py

class InvestmentGroupModelForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(InvestmentGroupModelForm, self).__init__(*args, **kwargs)

    class Meta:
        model = models.InvestmentGroup
        fields = '__all__'
        widgets = {
            "lead_investor": autocomplete.ModelSelect2(
                url="lead-investor-autocomplete",
                forward=["name"]
            )
        }

AutoCompleteview

class LeadInvestorAutoComplete(autocomplete.Select2QuerySetView):
    def get_queryset(self):
        # Don't forget to filter out results depending on the visitor !
        if not self.request.user.is_authenticated:
            return models.Person.objects.none()

        qs = models.Person.objects.all()
        persons = self.forwarded.get('persons', None)
        print(persons) # Output: []
        if persons:
            qs = qs.filter(person__in=persons)

        return qs

Я получаю пустые значения, если я пересылаю многие ко многим полям таким образом, но это работает для других полей, таких как имя или внешние ключи.

Можно ли переслать поле ManyToMany?

Вернуться на верх