猿问

django:自定义代码集成到 django 项目中

菜鸟在这里和 Django。我有一个 Django 应用程序的以下文件夹结构,它位于主项目文件夹中。


my_app/

    __init__.py

    admin.py

    apps.py

    migrations/

        __init__.py

    models.py

    tests.py

    views.py

我写了一个命令行 python 脚本来获取一个 JSON 文件并解析它以显示非常具体的信息。它使用请求库进行 JSON 和数据解析。


我的问题是如何将我的脚本集成到 Django 应用程序中。具体怎么带上它的逻辑,放在哪个文件下?我的想法是创建另一个文件并将它们导入到视图中。并将它们传递给渲染函数 - 这可能不是正确的 Django 方式,但有点卡在那里。哦,我不使用任何数据库,脚本使用文本文件并写入它。


肥皂起泡泡
浏览 238回答 2
2回答

函数式编程

由于您将脚本包含在视图中,因此假设:您的 JSON 文件不会经常更改如果您的 Django 应用程序生成多次(例如,如果您使用 uwsgi 或 gunicorn),则有多个请求不是问题如果是这种情况,任何 Pythonic 解决方案都可以。如果 1 不适用,您可能应该实现自己的中间件,根据要求,获取过期的 JSON 文件(例如,如果最后一次获取发生在很久以前)在请求中添加 JSON 文件内容:这样您就不必透露保存 JSON 文件的位置如果您有多个实例,您可以或多或少地执行与 1 相同的操作,但您可能决定将 JSON 值与其过期时间一起存储在单独的存储中。你也可以配置 uwsgi/guincorn 在启动时获取 JSON 文件:这样你就不会在启动时多次获取 JSON 文件。然后,您的中间件将在必要时进行工作以使其保持最新状态。

胡说叔叔

我services在我的 Django 应用程序中放置一个文件夹,并为每个非 django 内容添加一个文件夹。但这基本上只是为了方便,Django 并没有在这里对你进行限制。
随时随地看视频慕课网APP

相关分类

Python
我要回答