在Django中运行Extra脚本

在Django中运行Extra脚本

当你有一些与网络开发有关的新想法时,总是需要运行额外的脚本或进程,而在Python中!!它总是如此。

它可以是任何脚本,可能包括加载数据、处理和清理数据,或任何ML阶段,当制作一个应用程序时,直接在视图或模型中提供业务逻辑并不总是最好的。由于django惯例中提到了 “瘦视图”,我们必须尝试修剪掉这些逻辑,并尝试将其嵌入到其他文件中。

Django扩展包中,使你能够运行额外的脚本,你需要使用pip来安装它,使用终端并输入

pip install django-extensions        

在setting.py文件中找到的已安装的应用程序中添加django-extensions。

INSTALLED_APPS = [
    ...
    ...
    'django_extensions',
]

现在在你的项目中创建一个名为scripts的文件夹,它将包含所有可以执行的python文件
添加一个名为”init.py “的空的Python文件,指定脚本也是Django项目的一部分。

创建新的文件,其中包含你需要执行的代码,名称随你喜欢。

例子。在运行服务器之前,要将数据从CSV文件加载到数据库中

load.py

import csv
from site.models import Destination

def run():
    # All data in run method only will be executed 
    fhand = open('location.csv')
    reader = csv.reader(fhand)
    next(reader)

    for row in reader:
        latitude = row[0]
        longitude = row[1]
        name = row[2]
        item = Destination.objects.create(name=name,latitude=latitude,longitude=longitude)
        item.save()

    print("Data Added")

现在要运行脚本,只需按下面的命令即可,其中’load’是一个文件名

python manage.py runscript load

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Django 教程