Редактирование обеих сторон M2M в Администраторе Page

Я получил эту ошибку также.

for (int i=0;i<10;i++) { ..

не допустимо в стандарте C89/C90. Как OysterD заявляет, необходимо сделать:

int i;
for (i=0;i<10;i++) { ..

Ваш исходный код позволяется в C99 и более поздних стандартах языка C.

7
задан DavidM 9 November 2009 в 10:27
поделиться

1 ответ

Причина, по которой ничего не происходит автоматически, заключается в том, что поле «проекты» не является частью модели тегов. Значит, всю работу придется делать самому. Что-то вроде (в TagForm):

def __init__(self, *args, **kwargs):
    super(TagForm, self).__init__(*args, **kwargs)
    if 'instance' in kwargs:
        self.fields['projects'].initial = self.instance.project_set.all()

def save(self, *args, **kwargs):
    super(TagForm, self).save(*args, **kwargs)
    self.instance.project_set.clear()
    for project in self.cleaned_data['projects']:
        self.instance.project_set.add(project)

Обратите внимание, что код не тестировался, поэтому вам может потребоваться немного подправить его, чтобы заставить его работать.

2
ответ дан 7 December 2019 в 18:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: