Django 删除多个关系

Django 删除多个关系,django,django-models,Django,Django Models,如何删除django中的多人关系。您将如何删除m2m,然后删除foto这是我的型号,谢谢 class Picture(models.Model): owner = models.ForeignKey(User,blank = True) caption = models.CharField(max_length=150, blank=True, null=True) image = ImageField(upload_to='images/',blank = True,

如何删除django中的多人关系。您将如何删除m2m,然后删除foto这是我的型号,谢谢

class Picture(models.Model):
    owner = models.ForeignKey(User,blank = True)
    caption = models.CharField(max_length=150, blank=True, null=True)
    image = ImageField(upload_to='images/',blank = True, null = True)

class Land(Properies):
    photo = models.ManyToManyField(Picture,blank=True,related_name='Land_Pictures',null = True)
我试着这样删除它

checked_list = []
start = 1            
land_photos = sorted(list(land.photo.select_related()),reverse =True)
while start < 8:
    photo = 'photo%s' % start
    checked = form.cleaned_data[photo]
    if checked != None:
        checked_list.append(land_photos[start - 1])
        start += 1            
for a_foto in checked_list:
     land.photo.remove(a_foto)
     try:
         a_foto.remove_all_file()
         a_foto.delete()
     except OSError:
         pass
:

或者反过来,使用提供的
related\u name
参数:

>>> picture.Land_Pictures.remove(some_land)
默认情况下,如果没有
相关的\u名称
,它将是:

>>> picture.land_set.remove(some_land)

“删除”是什么意思?删除相关记录或完全删除关系?您将如何删除m2m然后删除foto这是我的以下型号谢谢这将删除it但我如何删除照片它自己我收到一种完整性错误foto和土地被删除错误图片对象无法删除,因为它的id属性设置为“无”。我像这样尝试过:开始时检查列表=[]开始时检查列表=1,开始时检查照片=已排序(列表(land.photo.select_related()),反向时检查为True),开始时检查<8:photo='photo%s'%start checked=form.cleaned_data[photo],如果检查!=无:checked_list.append(land_photos[start-1])start+=1用于checked_list中的一个foto:land.photo.remove(a_foto)try:a_foto.remove_all_file()a_foto.delete(),除了OSError:passGod这非常难读。你能更新一下你的话题吗?谢谢,就像我们说的“帮助我帮助你”:)嗨@我已经更新了一段时间的问题,我还没有收到你的来信,请帮我查看一下谢谢
>>> picture.Land_Pictures.remove(some_land)
>>> picture.land_set.remove(some_land)