我们可以在django框架上存储文件吗?

Can we store files on the django framework?

我想知道如何在django框架中存储一些文件,以及如何访问它们以编辑和更新它们?我想上传一些 excel 文件和一些 python 脚本来自动执行 excel 文件。我在本地一切正常,但只是想知道如何为任何人都可以访问的网页做这件事?

谢谢

有两种方法可以解决这个问题:

  1. 将python 自动化代码复制到您的应用程序目录下,将其作为模块导入到您的django view.py 文件中,并调用执行指定任务的函数。 (首选)
<your_app>/
├── admin.py
├── ...
├── <your_automation_script>.py
└── views.py
# views.py
from .<your_automation_script> import <edit_xlsx>

def view_function(req):
    # ... do before xls edition ...
    <edit_xlsx>()
    # ... do after xls edition ...
    return "something"
  1. 在 django 视图中创建 python 自动化代码的子进程。 (不是首选)
# views.py
import subprocess

def view_function(req):
    # ... do before xls edition ...
    process = subprocess.run(['/path/to/automation_script.py','<args_if_any>'], check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)

    output = process.stdout
    errors = process.stderr
    # ... do after xls edition ...
    return "something"