如何在django update语句中将字段设置为null

问题描述 投票:0回答:1

我有以下声明:

TrackTitle.objects.filter(pk=tracktitle_id).update(master_id=None)

我从这里得到以下错误:

/ mturk / remove TrackTitle中的FieldDoesNotExist没有名为'master_id'的字段

但是,如果我将其更改为字段名称本身(这是一个外键):

TrackTitle.objects.filter(pk=tracktitle_id).update(master=None)

我收到以下错误:

int()的基数为10的无效文字:'无'

如何在更新语句中将master_id设置为null?

我的模型是:

class TrackTitle(models.Model):
    ...
    master = models.ForeignKey(ItemMaster, blank=True, null=True, on_delete=models.SET_NULL)
python django
1个回答
1
投票

尝试使用get:

 try:  
   TrackTitle.objects.get(pk=tracktitle_id).update(master=None)
 except ObjectDoesNotExist:
   print("No track with the id")
© www.soinside.com 2019 - 2024. All rights reserved.