#python #django
#python #django
Вопрос:
У меня есть эти модели, и я хочу выбрать конкретные данные из всех моделей
Пример:
Consultatie.objects.filter(pacient= 1)
получение данных из Diagnotic, специфичных для этого пациента
получение данных из Medicamentatie, специфичных для этого пациента
class Pacient(models.Model):
name= models.CharField(max_length=100)
class Medicamentatie(models.Model):
lista_medicament = models.ForeignKey(ListaMedicamente, on_delete=models.PROTECT, choices='')
class Diagnostic(models.Model):
lista_boala = models.ForeignKey(ListaBoli, on_delete=models.PROTECT, choices='')
medicamentatie_diagnostic = models.ManyToManyField(Medicamentatie)
class Consultatie(models.Model):
pacient = models.ForeignKey(Pacient, on_delete=models.CASCADE, choices='')
medic = models.ForeignKey(Medic, on_delete=models.PROTECT, choices='')
diagnostic = models.ManyToManyField(Diagnostic)
Ответ №1:
вы можете попробовать сделать что-то вроде этого:
diagnostics_id_list =
list(set(Consultatie.objects.filter(pacient=1).values_list('diagnostic',
flat=True)))
diagnostics = Diagnostics.objects.filter(id__in=diagnostics_ids)
Благодаря этому вы получите всю уникальную диагностику для вашего пациента.
Не могу сказать о медикаментозности, потому что в вашем коде нет модели ListaMedicamente.
Комментарии:
1. Спасибо! я попробую. ListMedicamente не так важен … это только для выбора некоторых уже вставленных данных