我有一个django项目,它使用了一个具有多个UDF的postgres数据库。这些UDF是用plpythonu编写的。由于plpyhtonu是不可信的语言,因此只有数据库超级用户才能使用它来创建UDF。这造成了一个严重的问题,因为我没有办法在测试套件中以编程方式创建它们。现在,我看到两个选项:如何测试在数据库中使用UDF的Django站点?
- 修改django.db.backends.creation._create_test_db来从模板创建,它已经载入我的UDF的测试数据库。这似乎很难保持。
- 使用MD5认证创建超级用户,并使用psycopg2加载测试套件中的UDF。这似乎不安全。
有没有那么可怕的方法,我可以做到这一点?
谢谢。