在querySet python中更改值

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

有一个db,它有双值,应该是唯一的,以修复应该有脚本的bug。我尝试了类似于fares.models导入FareCategory的东西

from models import Fc
for x in Fc.objects.all():
    fc = Fc.objects.all().values_list('priority', flat=True)
    if x in fc:
        x.priority = max(fc) +1 
        x.save()

但查询集没有插入功能。修复它的最佳方法是什么?

python database
1个回答
1
投票

试试这个:

fc = Fc.objects.all().values_list('operator_priority', flat=True)
seen_values = set()
new_list = []
for x in fc:
   if x not in seen_values:
       new_list.append(fc)
       seen_values.add(fc)

或者也尝试这个:

fc = Fc.objects.all().values_list('operator_priority', flat=True)
new_dict = dict()
for obj in fc:
   if obj not in new_dict:
       new_dict[obj] = obj
© www.soinside.com 2019 - 2024. All rights reserved.