summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/models.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 8ee72e7b3..2898c7934 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -41,6 +41,7 @@ from PIL import Image
from ooopy.OOoPy import OOoPy
from ooopy.Transformer import Transformer as OOTransformer
import ooopy.Transforms as OOTransforms
+import uuid
from django import forms
from django.apps import apps
@@ -79,7 +80,7 @@ from ishtar_common.alternative_configs import ALTERNATE_CONFIGS, \
from ishtar_common.data_importer import pre_importer_action
from ishtar_common.model_managers import SlugModelManager, ExternalIdManager, \
- TypeManager
+ TypeManager, UUIDModelManager
from ishtar_common.model_merging import merge_model_objects
from ishtar_common.models_imports import ImporterModel, ImporterType, \
ImporterDefault, ImporterDefaultValues, ImporterColumn, \
@@ -4696,6 +4697,7 @@ class Basket(FullSearch, OwnPerms, ValueGetter, TemplateItem):
Subclass must be defined with an "items" ManyToManyField
"""
IS_BASKET = True
+ uuid = models.UUIDField(default=uuid.uuid4)
label = models.CharField(_("Label"), max_length=1000)
comment = models.TextField(_("Comment"), blank=True, null=True)
slug = models.SlugField(_("Slug"), blank=True, null=True)
@@ -4713,6 +4715,7 @@ class Basket(FullSearch, OwnPerms, ValueGetter, TemplateItem):
IshtarUser, verbose_name=_("Shared (read/edit) with"), blank=True,
related_name='shared_write_%(class)ss'
)
+ objects = UUIDModelManager()
TABLE_COLS = ['label', 'user']
@@ -4731,6 +4734,9 @@ class Basket(FullSearch, OwnPerms, ValueGetter, TemplateItem):
def __str__(self):
return self.label
+ def natural_key(self):
+ return (self.uuid, )
+
@classmethod
def BASE_REQUEST(cls, request):
if not request.user or not getattr(request.user, 'ishtaruser', None):