python - 如何在Django中一一获取模型的对象
问题描述
我需要创建一个将在 celery 中启动的函数,并依次从模型中获取记录,检查某些内容并将数据写入另一个具有单对一关系的模型。条目很多,使用 model_name.objects.all() 是不合适的(会占用大量内存和时间)如何正确执行。
解决方案
您可以在查询集https://docs.djangoproject.com/en/dev/ref/models/querysets/#iterator上使用迭代器,以便您的记录由一个获取
model_iterator = your_model.objects.all().iterator()
for record in model_iterator:
do_something(record)
推荐阅读
- drupal - Drupal 8 新手 - 如何访问 page.html.twig 中的字段?
- c# - 无法解析 Packages/manifest.json
- mysql - 使用 pgloader 将 mysql 迁移到 postgres
- python - 在 Mac os X 上使用 tarfile 打开 .tgz 文件
- java - 当作业再次运行时,Spring 批处理阅读器不会“重新读取”
- python - 处理回归问题中分类变量的最佳方法 - python
- python - 如何使用 Python 中的多处理模块来调用应用程序的不同副本?
- .net - .NET Core Web API 从内存流返回 Zip 文件
- android - 为什么我们将每个 Activity/Fragment 的 ViewModel 分开?
- javascript - 如何从 JavaScript 的下拉列表中选择第一个值