【发布时间】:2017-05-05 22:56:05
【问题描述】:
我正在使用 python 和 Django 构建一个应用程序。我有几个模型,但我需要从一个模型获取数据到另一个模型(可以使用 SOSS(销售订单号)建立关系。我确实有这样做的逻辑,但没有我想要的效率。它处理数据大约需要 5-6 分钟。
我的 Model 1 有关系号(po_number),和 Model 2 有关联(这里叫planning_number),因为 Model 2 大概有 93,000 条数据线,所以需要很多时间。
这是我的逻辑:
def import_withtimes(request):
print "importando With Times a ots report"
po_cache = list()
for item in Model1.objects.all():
if item.po_number in po_cache:
continue
withtimes = Model2.objects.filter(planning_order=item.po_number)
for wi in withtimes:
po_cache.append(wi.planning_order)
item.wms = wi.wms_order
item.status = wi.shipment_status
item.aging = wi.status_date
item.carrier = wi.service_level
item.add_date = wi.order_add_date
item.asn_validation = wi.asn_sent_time
item.docs_add_date = wi.docs_received_time
item.save()
我的问题是:有没有更有效的方法将数据从一个模型反映到另一个模型?
【问题讨论】:
-
您好,您的代码是要按常规运行还是手动运行?
标签: python django for-loop django-models append