From ca5a726e8d8d04803e98386fd41a77bd5e57580d Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Mon, 12 Jul 2021 12:16:00 +0200 Subject: [PATCH 1/2] base_adresse: factorize search by id (#55522) --- passerelle/apps/base_adresse/models.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/passerelle/apps/base_adresse/models.py b/passerelle/apps/base_adresse/models.py index 2ce1b704..25977151 100644 --- a/passerelle/apps/base_adresse/models.py +++ b/passerelle/apps/base_adresse/models.py @@ -117,12 +117,7 @@ class BaseAdresse(BaseResource): self, request, id=None, q=None, zipcode='', citycode=None, lat=None, lon=None, page_limit=5 ): if id is not None: - try: - address = AddressCacheModel.objects.get(api_id=id) - except AddressCacheModel.DoesNotExist: - return {'err': _('Address ID not found')} - address.update_timestamp() - return {'data': [address.data]} + return self.get_by_id(request, id=id) if not q: return {'data': []} @@ -167,6 +162,14 @@ class BaseAdresse(BaseResource): return {'data': result} + def get_by_id(self, request, id): + try: + address = AddressCacheModel.objects.get(api_id=id) + except AddressCacheModel.DoesNotExist: + return {'err': _('Address ID not found')} + address.update_timestamp() + return {'data': [address.data]} + @endpoint( pattern='(?P.+)?$', description=_('Geocoding (Nominatim API)'), -- 2.32.0.rc0