函数pgp_sym_encrypt(数字,未知)不存在

2024-10-17 00:23:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Django项目中使用https://github.com/incuna/django-pgcrypto-fields作为pgcrypto。它可以很好地插入、更新字段。 但当我尝试类似的事情时

MyTable.objects.filter(some_code=somecode).update(
                    some_value=some_price * F('some_units'),
                    updated_on=datetime.now()
                )

它把我扔了 psycopg2.errors.UndefinedFunction:函数pgp_sym_encrypt(数字,未知)不存在

任何帮助都会很好。谢谢:)


Tags: 项目djangohttpsgithubcomfieldsobjectsmytable
1条回答
网友
1楼 · 发布于 2024-10-17 00:23:48

要使用pgcrypto函数,必须在数据库中创建pgcrypto扩展

$  psql mydbname -c 'CREATE EXTENSION pgcrypto;'
CREATE EXTENSION
$  psql mydbname -c '\dx'
                            List of installed extensions
   Name    | Version |   Schema   |                   Description                   
     -+    -+      +                        -
 pgcrypto  | 1.3     | public     | cryptographic functions
...

相关问题 更多 >