Я получил эту ошибку также.
for (int i=0;i<10;i++) { ..
не допустимо в стандарте C89/C90. Как OysterD заявляет, необходимо сделать:
int i;
for (i=0;i<10;i++) { ..
Ваш исходный код позволяется в C99 и более поздних стандартах языка C.
Причина, по которой ничего не происходит автоматически, заключается в том, что поле «проекты» не является частью модели тегов. Значит, всю работу придется делать самому. Что-то вроде (в 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)
Обратите внимание, что код не тестировался, поэтому вам может потребоваться немного подправить его, чтобы заставить его работать.