summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorPaolo Melchiorre <paolo@melchiorre.org>2017-03-29 23:52:42 +0200
committerTim Graham <timograham@gmail.com>2017-04-25 20:21:36 -0400
commitfcb5dbfec0542faaa1b0adad754a1caf1bcd65e2 (patch)
treea81d7f63382578206e943e539165fecf43c00e64 /django
parent98ee57e343206ef553de78b22be5e9a6dacb5060 (diff)
Fixed #27996 -- Added RandomUUID function and CryptoExtension to contrib.postgres.
Diffstat (limited to 'django')
-rw-r--r--django/contrib/postgres/functions.py11
-rw-r--r--django/contrib/postgres/operations.py6
2 files changed, 16 insertions, 1 deletions
diff --git a/django/contrib/postgres/functions.py b/django/contrib/postgres/functions.py
index d17f9cb37d..36b32e0751 100644
--- a/django/contrib/postgres/functions.py
+++ b/django/contrib/postgres/functions.py
@@ -1,4 +1,13 @@
-from django.db.models import DateTimeField, Func
+from django.db.models import DateTimeField, Func, UUIDField
+
+
+class RandomUUID(Func):
+ template = 'GEN_RANDOM_UUID()'
+
+ def __init__(self, output_field=None, **extra):
+ if output_field is None:
+ output_field = UUIDField()
+ super().__init__(output_field=output_field, **extra)
class TransactionNow(Func):
diff --git a/django/contrib/postgres/operations.py b/django/contrib/postgres/operations.py
index 7544e38613..8ff043b5a9 100644
--- a/django/contrib/postgres/operations.py
+++ b/django/contrib/postgres/operations.py
@@ -35,6 +35,12 @@ class CITextExtension(CreateExtension):
self.name = 'citext'
+class CryptoExtension(CreateExtension):
+
+ def __init__(self):
+ self.name = 'pgcrypto'
+
+
class HStoreExtension(CreateExtension):
def __init__(self):