【问题标题】:How is it possible for QuerySet.count() to return non-zero values but for list(QuerySet.all()) to yield an empty list?QuerySet.count() 如何返回非零值但 list(QuerySet.all()) 产生一个空列表?
【发布时间】:2020-09-28 09:05:37
【问题描述】:

我正在使用 django-extensions 运行一个脚本,这里是它的暂停执行。

这怎么可能?

我正在使用本地 postgres 实例在 Windows 上运行 Django 2.2.1。数据库本身是使用psql 从使用pg_dump | gzip 创建的转储中恢复的。还有另一个数据库,它是使用 pgAdmin 从自定义格式文件中恢复的,在该数据库上代码工作正常,所以我想我搞砸了恢复,但是如何?

【问题讨论】:

  • 您尝试过打印对象吗? print(objects)?
  • 或者,您检查对象列表的长度了吗? print(len(objects))?
  • 这两个都打印出预期的内容:分别为[]0

标签: python django postgresql django-queryset


【解决方案1】:

使用选项--format=c --blobs --section=pre-data --section=data --section=post-data 重新创建备份后问题得到解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-12
    • 1970-01-01
    • 2017-09-02
    • 2019-12-07
    • 2022-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多