在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)
我正在尝试删除一个描述实例并将其替换为另一个实例,并且仍然让它与相同的 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()
我想我可以尝试编写一些代码来解决这个问题,但我宁愿找到一种方法来删除一个并在其位置添加另一个实例。