Как следует из названия, .values_list()
возвращает значения list
, а объект list
не имеет метода .get()
.Если get_external_accounts
возвращает набор запросов, вы можете просто использовать .get()
в наборе запросов:
accounts = group.get_external_accounts(include_sub_groups=True)
try:
account: StripeExternalAccount = accounts.get(id=account_id)
except StripeExternalAccount.DoesNotExist:
return Response(status=status.HTTP_400_BAD_REQUEST)
Если вам понадобится список идентификаторов учетных записей ниже в вашем коде, вы можете добавить:
account_ids = accounts.values_list('id')
Возможно, стоит указать, что получение одного элемента с accounts.get()
и получения списка всех идентификаторов с accounts.values_list('id')
будет выполнять два запроса к вашей базе данных.
Если у вас есть несколько учетных записей с одинаковым идентификатором и вы хотите получить первый, используйте
account: StripeExternalAccount = accounts.filter(id=account_id).first()