它的标题可能可以更好地措辞,但我挣扎着与它。你知道吗
基本上,我试图从我的模型计算出每个站点的电路成本。电路模型包含如下站点模型:
型号:
class ShowroomConfigData(models.Model):
location = models.CharField(max_length=50)
class CircuitInfoData(models.Model):
showroom_config_data = models.ForeignKey(ShowroomConfigData,verbose_name="Install Showroom")
major_site_info = models.ForeignKey(MajorSiteInfoData,verbose_name="Install Site")
circuit_type = models.CharField(max_length=100,choices=settings.CIRCUIT_CHOICES)
circuit_speed = models.IntegerField(blank=True)
cost_per_month = models.DecimalField(decimal_places=2,max_digits=8)
这可能是如何通过查询来实现的,但是我在前面的一个问题中尝试过,似乎我遇到了一个bug,所以我尝试手动实现它
样本数据:
site a | 1
site a | 2
site a | 5
site b | 100
site b | 2
site d | 666
site d | 1
所以我想生产
地点a | 8 场地b | 102 场地d | 667
我试着用这种方法来测试:
circuits = CircuitInfoData.objects.all()
showrooms = ShowroomConfigData.objects.only('location')
for sdata in showrooms:
for cdata in circuits:
while cdata.showroom_config_data.location == sdata.location:
print sdata.location
print cdata.cost
这个网站刚刚大量生产了8倍的时间。所以我不知道该怎么做?你知道吗
谢谢
如果你只是用字典呢?每个赛道都有权进入展厅,对吗?因此,如果您构建了一个字典,并在某个特定站点(如果该站点已经被用作键)简单地提取了值,那么您可以简单地添加该值并再次存储它。下面是一个这样做的例子。你知道吗
可能并不完全有效,但代码背后的概念将为您提供所需的输出。你知道吗
最有效的方法是使用查询。这可以通过使用annotations实现,方法如下:
例如,这将返回表单中的数据
然后可以格式化此输出
得到
相关问题 更多 >
编程相关推荐