Django 如何在queryset上添加字段和值
有一个模型Django 如何在queryset上添加字段和值,django,orm,django-queryset,Django,Orm,Django Queryset,有一个模型 class Computer(models.Model): mouse = models.CharField(max_length=15, db_index=True) keyboard = models.CharField(max_length=15, db_index=True) Computer.objects.all().values() > [ {cpu: 'c1', keyboard: 'k1'}, {cpu: 'c2', keyb
class Computer(models.Model):
mouse = models.CharField(max_length=15, db_index=True)
keyboard = models.CharField(max_length=15, db_index=True)
Computer.objects.all().values()
> [
{cpu: 'c1', keyboard: 'k1'},
{cpu: 'c2', keyboard: 'k2'}
]
这是迪克特
cpuToMouse = {'c1': 'm1', 'c2': 'm2'}
我想添加字段和值
computer = Computer.objects.all()
for com in computer:
com.mouse = cpuToMouse[com.cpu]
和过滤
computer.filter(mouse='m2')
但是。。不工作
我试着注释
computer.annotate(mouse=F(cpuToMouse[com.cpu])
但它也不起作用