__call __ () отсутствует 1 обязательный аргумент только для ключевого слова: 'manager' - PullRequest
0 голосов
/ 16 января 2020
class CreateProject(forms.ModelForm):
    def __init__(self, user, editable_object=None, *args, **kwargs):
        super(CreateProject, self).__init__(*args, **kwargs)
        use_required_attribute = True
        self.fields['tasks'] = forms.ModelMultipleChoiceField(
            widget=forms.SelectMultiple(
                attrs={
                    'class': 'form-control'
                }
            ),
            queryset=Task.objects.filter(company=user.company),
            required=True,
            initial=editable_object.tasks if editable_object else None,
            label='Tasks'
        )

Когда я пытаюсь дать параметр editable_object (объект модели проекта), он не может сделать начальное значение для поля задач, когда я удаляю начальное значение для этого поля, это работает

1 Ответ

0 голосов
/ 16 января 2020

Нашел ответ. Так как значения ManyToManyField не являются объектом QuerySet, мы должны фильтровать его, как мы делаем это с Model.objects

initial=editable_object.tasks.all() if editable_object else None
# code
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...