问题描述:
save() prohibited to prevent data loss due to unsaved related object 'item_no
原因分析:
原来的目的是保存数据时同步另一个表,不存在新增,存在更新,但是当不存在新增时,关联外键item_no的信息还没有保存,就开始编辑关联表,导致数据丢失。
解决办法:
等主表的数据保存成功后再去同步编辑关联表,所以我们需要将super().save()的保存命令放到字表update_or_create之前。
def save(self, force_insert=False, force_update=False, using=None,标签:prevent,loss,self,object,update,item,no,save,unit From: https://www.cnblogs.com/beichengshiqiao/p/17063263.html
update_fields=None):
super().save()
IM003D1Model.objects.update_or_create(item_code=self.item_no + '-' + self.item_unit.code,
unit_ratio=1,
su_price=0,
cu_price=0,
cu_price_vip=0,
defaults={'item_no': self,
'item_unit': self.item_unit}
)