models.py には...
class Siteinfo(models.Model):
url = models.CharField(max_length=100)
description = models.TextField()
class Makesite(models.Model):
sitename = models.CharField(max_length=100, unique = True)
siteinfo = models.ManyToManyField(Siteinfo)
ref_id = models.ManyToManyField(RefID)
def __unicode__(self):
return u'%s' %(self.sitename)
description のインスタンスを削除して、別のインスタンスに置き換えようとしていますが、同じ URL に関連付けられていて、多対多のオブジェクトのままです。グループオン。
したがって、group1 はサイト名です。私が持っている関係を作成する
url = request.POST['url']
description = request.POST['description']
datsite = Makesite.objects.get(sitename=site)
datsite.siteinfo.add(Siteinfo.objects.create(url=url,description=description))
しかし、説明を削除してこのコードで置き換えようとすると、URLも削除されます。
name = Makesite.objects.get(sitename=site).siteinfo.values_list('description',flat=True)[0]
Makesite.objects.get(sitename=site).siteinfo.get(description=name).delete()
この問題を回避できるコードを書くことはできると思いますが、単に 1 つを削除してその場所に別のインスタンスを追加する方法を見つけたいと思います。