diff options
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r-- | archaeological_finds/models_finds.py | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index d3abd2c8a..e62c41887 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -333,12 +333,13 @@ class BaseFind(BulkUpdatedItem, BaseHistorizedItem, GeoItem, OwnPerms, def natural_key(self): return (self.external_id, ) - def get_values(self, prefix='', no_find=False): - values = super(BaseFind, self).get_values(prefix=prefix) + def get_values(self, prefix='', no_values=False, no_find=False): + values = super(BaseFind, self).get_values(prefix=prefix, + no_values=no_values) if no_find: return values values[prefix + "finds"] = [ - find.get_values(prefix=prefix, no_base_finds=True) + find.get_values(no_values=True, no_base_finds=True) for find in self.find.order_by('pk').all() ] return values @@ -640,10 +641,12 @@ class FindBasket(Basket, MainItem, ValueGetter): ("view_own_find", u"Can view own Find"), ) - def get_values(self, prefix=''): - values = super(FindBasket, self).get_values(prefix=prefix) + def get_values(self, prefix='', no_values=False): + values = super(FindBasket, self).get_values(prefix=prefix, + no_values=no_values) values[prefix + "items"] = [ - item.get_values() for item in self.items.distinct().all() + item.get_values(no_values=True) + for item in self.items.distinct().all() ] return values @@ -1597,12 +1600,13 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, QRCodeItem, return return self.base_finds.order_by('-pk').all()[0] - def get_values(self, prefix='', no_base_finds=False): - values = super(Find, self).get_values(prefix=prefix) + def get_values(self, prefix='', no_values=False, no_base_finds=False): + values = super(Find, self).get_values(prefix=prefix, + no_values=no_values) if no_base_finds: return values values[prefix + "base_finds"] = [ - base_find.get_values(prefix=prefix, no_find=True) + base_find.get_values(no_values=True, no_find=True) for base_find in self.base_finds.distinct().order_by('-pk').all() ] return values |