diff --git a/pandora/document/models.py b/pandora/document/models.py index 56f46600..6f6466f0 100644 --- a/pandora/document/models.py +++ b/pandora/document/models.py @@ -412,6 +412,8 @@ class Document(models.Model, FulltextMixin): and document_key['value'].get('type') == 'map' \ and self.get_value(document_key['value']['key']): value = re.compile(document_key['value']['map']).findall(self.get_value(document_key['value']['key'])) + if value and document_key['value'].get('format'): + value = [document_key['value']['format'].format(value[0])] return value[0] if value else default elif key == 'user': return self.user.username diff --git a/pandora/item/models.py b/pandora/item/models.py index ba98cb1e..695558c3 100644 --- a/pandora/item/models.py +++ b/pandora/item/models.py @@ -215,6 +215,8 @@ class Item(models.Model): and item_key['value'].get('type') == 'map' \ and self.get(item_key['value']['key']): value = re.compile(item_key['value']['map']).findall(self.get(item_key['value']['key'])) + if value and item_key['value'].get('format'): + value = [item_key['value']['format'].format(value[0])] return value[0] if value else default return default