我们有一个带有PostgreSQL 9.3后端的Django1.4.5项目。不幸的是,我们在尝试为其中一个应用程序(称为sddb
)创建fixture时遇到了问题。
数据库中充满了属于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 - Django dumpdata输出为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26252228/