【问题标题】:Change script run from commandline to django view将脚本从命令行运行更改为 django 视图
【发布时间】:2014-04-19 08:26:48
【问题描述】:

我有一个脚本,我从命令运行以从 csv 填充 django 模型。 我使用的命令是:

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

我想更改它,以便它可以在页面请求的 django 视图上运行。 请问有哪位有见识的吗? 问候, 乔什

【问题讨论】:

  • 简单。 artifact_db_loader.py 将此文件添加到项目根目录。制作接受您的 arguments 的新功能。从 django 视图中调用它。
  • Priyank 请对此提供更多指导。我可以为您提供更多详细信息
  • Django 在他们的文档中有一个完整的部分来解释如何做到这一点。你读过文档吗?
  • 把我指向你提到 Bibhas 的文档

标签: python django csv django-views


【解决方案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.')

您可以放置​​条件和循环,因此您应该能够将整个脚本作为这样的视图。

【讨论】:

    【解决方案2】:

    由于您没有提供有关脚本的任何详细信息,我假设里面有一个函数,它将文件名和模型名称作为参数,并在从终端调用时完成工作。您可以简单地将该函数移至控制器并根据请求使用两个参数调用它。

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

    【讨论】:

    • 链接已损坏。
    猜你喜欢
    • 2017-06-20
    • 1970-01-01
    • 2018-10-05
    • 2020-03-15
    • 2012-05-03
    • 2011-05-01
    • 2013-09-14
    • 2013-07-18
    相关资源
    最近更新 更多