Как получить длину поля массива, присутствующего в PostgreSQL, используя Python Django Models
Это моя модель Django:
class UserVpaUpiId(models.Model):
user_id = models.IntegerField(db_index=True, unique=True)
vpa_upi_id = models.TextField(null=False, blank=True)
created_on = models.DateTimeField(auto_now_add=True, null=False)
updated_on = models.DateTimeField(auto_now=True, null=False)
Я хочу удалить запись с определенным идентификатором пользователя, что я могу успешно сделать, используя:
UserVpaUpiId.objects.filter(user_id=user_id).delete()
Но перед этим я хочу отобразить количество UPI, которые хранятся в vpa_upi_id в формате:
["acbd.pq@icici", "9987654431@apl", "9876543210@apl"]
Как я могу этого достичь?
vpa_upa_ids = UserVpaUpiId.objects.filter(user_id=user_id).values('vpa_upi_id')[0]['vpa_upi_id']
arr = vpa_upa_ids[1:-1].split(",")
length = len(arr)
Поскольку у вас уже есть user_id для удаления записи, вы можете взять соответствующую запись(и), преобразовать результат в строку и выполнить некоторые манипуляции со строкой, чтобы превратить ее в массив, где вы можете затем взять длину.