gpt4 book ai didi

django - 为 TestCase 设备指定数据库

转载 作者:行者123 更新时间:2023-12-03 23:56:14 26 4
gpt4 key购买 nike

我有我的网站使用的两个数据库,我有一个使用这两个数据库的应用程序。我需要编写一个测试用例来加载两个数据库的夹具。我使用了一个 DB 路由器,它在生产中运行良好,但在测试框架中,Django 坚持对所有设备使用“默认”数据库,即使是指定其他数据库的模型也是如此。我如何告诉 Django 对另一个数据库运行夹具?

我的 TestCase 是定义列表:

class VerifierTestCase(TestCase):
fixtures = ['zipcodes_test.json', 'all_states.json', 'wtf.json']
multi_db = True

最佳答案

实际上,Django 中存在一个错误,如果您指定整个设备名称,它会导致它忽略基于名称的特定于数据库的指针。

所以如果你这样做 fixtures = ["mydata.default.yaml", "mydata.myotherdatabase.yaml"]
它将两个装置加载到默认数据库中。

但如果你这样做 fixtures = ['mydata']
它将正确加载。对于特定于 dbengine 的文件名(例如 mydata.default.postgresql.sql )也是如此。

关于django - 为 TestCase 设备指定数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4084220/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com