我们有一个带有 PostgreSQL 9.3 后端的 Django 1.4.5 项目。不幸的是,我们在尝试为其中一个应用程序(称为 sddb
)创建固定装置时遇到了问题。
数据库中充满了属于 sddb
应用程序的对象:
(venv)[root@dl380p1 team112]# ./manage.py shell
>>> from sddb.models.media import Metadata
>>> len(Metadata.objects.all())
22916
但是 dumpdata
输出为空:
(venv)[root@dl380p1 team112]# ./manage.py dumpdata sddb
[]
数据库的显式指向(提到 here )没有帮助:
(venv)[root@dl380p1 team112]# ./manage.py dumpdata --database=project_test sddb
[]
对于其他应用程序,dumpdata
工作正常:
(venv)[root@dl380p1 team112]# ./manage.py dumpdata reports | wc -c
239811
由于显而易见的原因,我不想使用整个表转储 (pgdump
)。希望能在这里找到合适的解决方案。
最佳答案
我有同样的问题,它与数据库路由器有关。只需确保路由器正确处理 allow_migrate
方法(默认情况下,其中一个路由器应返回 True
或类似 True 的值)。
在此处查看更多示例:Django Multiple databases Examples
关于Django 转储数据输出为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26252228/