问题描述
我有一个脚本,我可以从命令运行以从csv填充Django模型。我使用的命令是:
python artifact_db_loader.py -tzusb "d:\Test_Data\david nides\david-nides-usb.csv" -e 44
我想更改它,以便可以在页面请求的django视图上运行。 有见识的人吗? 问候,乔希
1楼
因为您没有提供有关脚本的任何详细信息,所以我假设内部有一个函数,该函数以文件名和模型名作为参数,并在从终端调用时完成工作。 您可以简单地将该函数移至控制器,并根据需要使用两个参数进行调用。
Django在其文档中有一说明了如何执行此操作。
2楼
根据我的经验,您可以在Django视图中的常规python脚本上执行任何操作。 例如 :
#! python3
# -*-coding:utf-8 -*
from django.shortcuts import HttpResponse
import os
def myView(request):
f = open('file.cvs', 'w')
f.write('Whatever you want')
f.close()
return HttpResponse('Done.')
您可以放置??条件和循环,因此您应该能够将整个脚本作为这样的视图放置。