我有一个类,我想显示每个Car
的所有模型,而无需定期访问数据库。所以我创建了一个 dict
,但我认为这不是最好的解决方案。如何更专业地解决这个问题?
class Car(models.Model):
name = models.CharField(max_length=100)
model = models.CharField(max_length=100)
def __str__(self):
return self.name + '/' + self.model
def catatlog(request):
cars = {}
all_cars = Car.objects.all().order_by('name')
for i in all_cars:
if i.name not in cars.keys():
cars[i.name] = [i.model]
else:
cars[i.name].append(i.model)
return render(request, 'index.html', {'cars':cars})
最佳答案
您可以使用 defaultdict相反:
from collections import defaultdict
def catatlog(request):
cars = defaultdict(list)
for i in Car.objects.all():
cars[i.name].append(i.model)
return render(request, 'index.html', {'cars':cars})
关于python - 如何对模型属性进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35558811/