2014-03-14 33 views
1

我有我的命令运行来填充从CSV一个Django模型脚本.. 我使用的命令是:更改脚本命令行运行到Django的观点

python artifact_db_loader.py -tzusb "d:\Test_Data\david nides\david-nides-usb.csv" -e 44 

我想改变这种做法,它可以在页面请求的django视图上运行。 任何人都有洞察力吗? Registers, Josh

+0

简单。 'artifact_db_loader.py'将此文件添加到项目根目录。创建接受你的'arguments'的新函数。从django视图调用它。 –

+0

Priyank请给这个更多的指导。我可以给你更多的细节 – Joshua

+0

Django在他们的文档中有一个完整的章节解释如何做到这一点。你读过文档了吗? –

回答

1

由于您没有提供有关脚本的任何细节,我假设里面有一个函数,它将文件名和模型名称作为参数,并在从终端调用时执行工作。您可以简单地将该功能移动到控制器,并根据要求使用这两个参数进行调用。

Django在他们的文档中有一个whole section解释如何做到这一点。

+0

的文档链接已损坏。 – garej

1

根据我的经验,您可以在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.') 

你可以把条件和循环,所以你应该可以把你的整个脚本作为一个这样的观点。