django - django-background-tasks 集成
问题描述
我有一个简单的 django 应用程序,它提供了一个登录页面和一个经过身份验证的仪表板。我创建了一个数据模型,仪表板视图显示了这些数据,这些数据取自 django 数据库。
我创建了一个类来处理这个模型中的数据。该类不直接参与应用程序视图,它仅修改数据库内容。使用 django-background-tasks 注册的重复函数,用于调用各种类函数来处理 db 数据。
目前我在 django 应用程序的单个文件中定义了类和 django-background-task 函数。我也在这个文件中实例化了这个类。
为了安排重复的 django-background-task 功能,我需要从 django 项目中的某个地方调用它一次。django 文件结构中的哪个位置最好做到这一点?
在apps.py 中?此时数据库准备好了吗?
谢谢。
解决方案
我在以下帖子中找到了这个问题的建议答案:
https://medium.com/@robinttt333/running-background-tasks-in-django-f4c1d3f6f06e
作者建议将要重复调用的函数放在一个名为 tasks.py 的文件中——我在包的自述文档中错过了这一点。此外,作者建议在 urls.py 中添加触发重复任务初始调度的调用。
我尝试了这个解决方案,它运行良好,尽管使用 urls.py 似乎不是最直观或最合乎逻辑的位置。如果有人有任何其他建议,我很想听听他们的意见。
塔。
推荐阅读
- discord.py - Discord.py 在所有服务器的语音频道中获取成员
- python - numpy 和 pickle 新内存错误的起源?
- reactjs - 显示来自状态的数据
- r - How to adjust this function to stop when the output is repeated in R?
- blockchain - chainlink 节点是否需要访问 keystore.json?
- javascript - Javascript Plotly integer slider?
- .net - How do you work with multiple solutions and docker on .NET Core microservices?
- reactjs - 在 url 更改时重新渲染组件的问题
- react-native - React Native:警告:列表中的每个孩子都应该有一个唯一的“关键”道具
- flutter - 等待网络图像和 CircularProgressIndicator