首页 |  我的博客 |  查看该博主内容分类 | 

django的models在存储数据时,如何给其他字段自定义存储值?

原理

重写models的save方法

示例

class YourModel(models.Model):
	...
	
	def save(self, *args, **kwargs):
		if self.pk:   # 已存在的对象
			ori_ins = YourModel.objects.get(pk=self.pk)
			if ori_ins.field1 != self.field1 and self.field1 == 5:   # self.field1 == 5指定某情况,根据业务进行调整
				self.field2 = 给field2赋的值
		
		return super().save(*args, **kwargs)
posted @ 2023-12-22 10:17  Z哎呀  阅读(23)  评论(0)    收藏  举报