如何解决测试中的Django Hstore错误

时间:2019-08-26 14:35:22

标签: django postgresql hstore django-tests

在我正在协作的应用程序中的某些时候,使用了HStoreField(来自django.contrib.postgres.fields)。该应用程序本身可以正常工作,没有构建错误。但是当我运行测试时,我遇到了一个问题:

django.db.utils.ProgrammingError: type "hstore" does not exist

从我发现的结果来看,问题出在Postgres,所以我尝试在psql中运行以下命令:create extension hstore;数据库上的template1。现在,扩展名在列出扩展名(\dx)时显示:

hstore  | 1.5     | public     | data type for storing sets of (key, value) pairs

由于错误仍然存​​在,显然这不是解决方案。我该怎么办?

编辑:我也从设置文件在create extension hstore;数据库上运行了default,验证了它的创建,但是仍然遇到相同的问题。

1 个答案:

答案 0 :(得分:0)

当我打开pdAdmin进行更好地了解时,我发现了问题所在。在我的设置文件中,我有一个默认数据库mydb。我在该数据库的psql中运行了create extension hstore;,但是我错过的是为测试创建了一个新的数据库:test_mydb。我连接到该数据库并在那里运行了相同的命令,然后测试开始工作。