Вам необходимо сохранить экземпляр модели перед добавлением любых полей m2m.Помните, что вы должны добавить поле m2m с помощью метода .add()
, а не назначать его непосредственно полю, как вы делаете.
if business.is_valid():
busi = business.save(commit=False)
et = EstablishmentType.objects.get(id=6)
busi.establishment_type = et
busi.save()
bt = BusinessType.objects.get(id=6)
busi.business_type.add(bt)
Обратите внимание, что метод save_m2m
доступен на modelform
объект, когда вы делаете form_obj.save(commit=False)
.Если для формы модели были заданы данные m2m, следует использовать метод save_m2m.Если вы хотите назначить его вручную, как вы делаете, вам нужно добавить его отдельно, как мой код выше.