From 00c4d37329ea0da4fa0c62860b2c5b4ff741237e Mon Sep 17 00:00:00 2001 From: Marcus Kok Date: Thu, 9 May 2024 10:37:05 -0400 Subject: [PATCH] Use list comprehension in model and expect to return None if no rows are returned --- data/model/entitlements.py | 11 ++++++++--- util/marketplace.py | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/data/model/entitlements.py b/data/model/entitlements.py index 981c8c76e..0209fd0eb 100644 --- a/data/model/entitlements.py +++ b/data/model/entitlements.py @@ -8,9 +8,14 @@ logger = logging.getLogger(__name__) def get_web_customer_ids(user_id): try: - customer_ids = [] - for customer in RedHatSubscriptions.select().where(RedHatSubscriptions.user_id == user_id): - customer_ids.append(customer.account_number) + customer_ids = [ + customer.account_number + for customer in RedHatSubscriptions.select().where( + RedHatSubscriptions.user_id == user_id + ) + ] + if len(customer_ids) == 0: + return None return customer_ids except RedHatSubscriptions.DoesNotExist: return None diff --git a/util/marketplace.py b/util/marketplace.py index 8bfa25624..a49a577b1 100644 --- a/util/marketplace.py +++ b/util/marketplace.py @@ -23,7 +23,7 @@ class RedHatUserApi(object): def get_account_number(self, user): email = user.email account_numbers = entitlements.get_web_customer_ids(user.id) - if len(account_numbers) == 0: + if account_numbers is None: account_numbers = self.lookup_customer_id(email) if account_numbers: # store in database for next lookup