python - 如何在 django 应用程序的 views.py 中执行外部脚本?
问题描述
以下是我的 django 文件结构
- 我的项目
我的应用
- 迁移
- 静止的
模板
- 我的应用
- 演示.html
- 我的应用
网址.py
- 视图.py
- 模型.py
- 管理员.py
- 应用程序.py
- 测试.py
- 脚本
- 演示脚本.py
- 管理.py
我想知道的是如何从views.py执行脚本Scripts/demo_script.py(在应用程序“myapp”之外),如果执行成功,在myapp/templates/myapp/demo上显示“Success”。 html 或在同一 html 页面上显示“执行失败”。
提前致谢!
解决方案
只需使用:
relative_path = "scripts/demo_script.py"
# or
absolute_path = os.path.join(settings.BASE_DIR, "scripts", "demo_script.py")
exec(open(relative_path or absolute_path).read()) # execute the py file
Django 中引用的所有路径都是相对于BASE_DIR
. BASE_DIR
是你的manage.py
谎言。
推荐阅读
- javascript - 如何在此代码中嵌入使用文件选择器而不是指定图像源?
- google-sheets - 如何检查一系列时间戳是否在时间范围内(谷歌表格)
- python - 绘制垂直线错误的 X 值
- python - BeautifulSoup 保留一些文本,但删除标签的其余部分
- node.js - 如何使用 Lambda 从 DynamoDB 中的列表中删除对象
- gwt - 如何摆脱这个无用的 GWT 编译器警告?
- asp.net-mvc - 在 MVC 5 Razor 页面中使用 VB.Net 模块
- python - 如何从块列表中提取列表?
- tensorflow - Softmax 激活在损失 sparse_categorical_crossentropy 的情况下表现最差
- ruby-on-rails - 带有 Rails 的 SameSite 属性问题