这是我现在的代码:
booking_data = {p: 0 for p in vehicle_category.types.all()}
vehicle_type_mapping = {k.id: k for k in vehicle_category.types.all()}
我想知道是否有一种方法可以只用一个循环来创建这两个dict。或者有没有另一种更有效的方法可以做到。
编辑以了解更多背景:
for vehicle_category in VehicleCategory.objects.prefetch_related('types').order_by('name'):
booking_data = {p: 0 for p in vehicle_category.types.all()}
vehicle_type_mapping = {k.id: k for k in vehicle_category.types.all()}
completed_booking_data[vehicle_category] = booking_data
1条答案
按热度按时间zzlelutf1#
一种方法是:
一种替代方案:
两种解决方案都只调用
vehicle_category.types.all()
一次,而不是两次。