diff options
Diffstat (limited to 'archaeological_finds/models_finds.py')
| -rw-r--r-- | archaeological_finds/models_finds.py | 10 | 
1 files changed, 9 insertions, 1 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index bda25f97c..539ba2325 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -44,7 +44,7 @@ from archaeological_operations.models import AdministrativeAct, Operation  from archaeological_context_records.models import ContextRecord, Dating  from ishtar_common.models import PRIVATE_FIELDS, SpatialReferenceSystem, \ -    BulkUpdatedItem +    BulkUpdatedItem, ExternalIdManager  class MaterialType(HierarchicalType): @@ -302,6 +302,7 @@ class BaseFind(BulkUpdatedItem, BaseHistorizedItem, OwnPerms):      PARENT_SEARCH_VECTORS = ['context_record']      BASE_SEARCH_VECTORS = ["label", "description", "comment", "cache_short_id",                             "cache_complete_id", "excavation_id"] +    objects = ExternalIdManager()      class Meta:          verbose_name = _(u"Base find") @@ -317,6 +318,9 @@ class BaseFind(BulkUpdatedItem, BaseHistorizedItem, OwnPerms):      def __unicode__(self):          return self.label +    def natural_key(self): +        return (self.external_id, ) +      def get_last_find(self):          # TODO: manage virtuals - property(last_find) ?          finds = self.find.filter().order_by("-order").all() @@ -874,6 +878,7 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, OwnPerms,      M2M_SEARCH_VECTORS = [          "datings__period__label", "object_types__label", "integrities__label",          "remarkabilities__label", "material_types__label"] +    objects = ExternalIdManager()      # fields      base_finds = models.ManyToManyField(BaseFind, verbose_name=_(u"Base find"), @@ -1018,6 +1023,9 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, OwnPerms,          )          ordering = ('cached_label',) +    def natural_key(self): +        return (self.external_id, ) +      @property      def short_class_name(self):          return _(u"FIND")  | 
