信号量里操作数据库异常

来源:7-13 django信号量实现用户密码修改

木鸟

2019-02-05

@receiver(pre_delete, sender=depto)
def delete_depto(sender, instance=None, created=False, **kwargs):
print(instance)
ele=instance.children.all()
for new_ele in ele:
new_ele.parent=instance.parent
new_ele.save()

class depto(models.Model):
name = models.CharField(max_length=50, unique=True,verbose_name=‘部门名称’)
parent = models.ForeignKey(“self”,null=True, blank=True, related_name=‘children’,on_delete=models.SET_NULL)
created_date = models.DateField()
modify_date = models.DateField()

class Meta:
    verbose_name = "部门信息"
    verbose_name_plural = verbose_name

def __str__(self):
    return self.name

如上代码,通过信号量,在删除过程中做一些操作,通过跟踪,代码执行到 new_ele.save()的时候,new_ele.parent已经更新。但程序执行完毕后,去数据库查看,parent的值为NULL 不明所以,望指教

写回答

1回答

bobby

2019-02-06

你有没有调试过看看 new_ele.parent=instance.parent 这一行代码执行后 parent是否为null?

0
4
bobby
回复
木鸟
你加我qq 442421039 我看看
2019-02-11
共4条回复

Python前后端分离开发Vue+Django REST framework实战

Django REST framework课程视频,RESTFul API前后端分离开发

2895 学习 · 2481 问题

查看课程