Size: a a a

Django [ru] #STAY HOME

2020 June 28

N

Nire in Django [ru] #STAY HOME
либо стать фанбоем какого-нибудь опен сюрс проекта и делать как у них
источник

AF

Anton Fircak in Django [ru] #STAY HOME
Sergei Sergeevich
Добрый день. а есть ли правила/рекомандации на тему - когда лучше наследовать от object, а когда от абстрактной модели?
зависит от твоей архитектуры БД
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
Anton Fircak
зависит от твоей архитектуры БД
а какая разница?  простой пример TimeStampedModel, наследование обоих типов приведет к одинаковой миграции
источник

N

Nire in Django [ru] #STAY HOME
в джанге 3 типа наследования моделей, хугли
источник

AF

Anton Fircak in Django [ru] #STAY HOME
Sergei Sergeevich
а какая разница?  простой пример TimeStampedModel, наследование обоих типов приведет к одинаковой миграции
абстракт модель хороша когда у тебя типо асбтр фабрики и тд
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
блин парни извините, я сообразил. конечно же любой ModelMixin наследуется от models.Model и имеет abstract=true по определению...извините
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
а бывало у вас такое, что скапливается приличное количество таких обязательных миксинов и возникает желаение объединить их в один, типа CommonMixin?
источник

DT

Dan Tyan in Django [ru] #STAY HOME
бывало
источник

N

Nire in Django [ru] #STAY HOME
а че нет)
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
ну да, почему бы не определить CommonMixin(Mixin1, Mixin2...)
источник

AF

Anton Fircak in Django [ru] #STAY HOME
Ребзя, а почему может не работать prefetch_related?

class DeviceMeasurement(models.Model):
   patient = models.ForeignKey(Patient, blank=True, null=True, on_delete=models.CASCADE)
   device = models.ForeignKey(Device, on_delete=models.CASCADE)
   created_date = models.DateTimeField()
   front_id = models.UUIDField(blank=True, null=True)

   def str(self):
       return f'{self.device}'


class MeasurememtResult(models.Model):
   measurement_result = models.FloatField()
   measurement_type = models.CharField(choices=MEASUREMENT_TYPES, max_length=30)
   device_measurement_id = models.ForeignKey(DeviceMeasurement, related_name='results', on_delete=models.CASCADE)

queryset = DeviceMeasurement.objects.values('patient__id','device__id').prefetch_related('results').all()
но вот поля с MeasurememtResult не возвращаются(
источник

С

Сергей in Django [ru] #STAY HOME
Я понять не могу теперь почему он ссылку не видит?
источник

С

Сергей in Django [ru] #STAY HOME
источник

AF

Anton Fircak in Django [ru] #STAY HOME
перезапусти вручную
источник

С

Сергей in Django [ru] #STAY HOME
how
источник

С

Сергей in Django [ru] #STAY HOME
команду найти не могу🤪
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
Anton Fircak
Ребзя, а почему может не работать prefetch_related?

class DeviceMeasurement(models.Model):
   patient = models.ForeignKey(Patient, blank=True, null=True, on_delete=models.CASCADE)
   device = models.ForeignKey(Device, on_delete=models.CASCADE)
   created_date = models.DateTimeField()
   front_id = models.UUIDField(blank=True, null=True)

   def str(self):
       return f'{self.device}'


class MeasurememtResult(models.Model):
   measurement_result = models.FloatField()
   measurement_type = models.CharField(choices=MEASUREMENT_TYPES, max_length=30)
   device_measurement_id = models.ForeignKey(DeviceMeasurement, related_name='results', on_delete=models.CASCADE)

queryset = DeviceMeasurement.objects.values('patient__id','device__id').prefetch_related('results').all()
но вот поля с MeasurememtResult не возвращаются(
почему не select_related() ?
источник

AF

Anton Fircak in Django [ru] #STAY HOME
Sergei Sergeevich
почему не select_related() ?
он же на one to one
источник

SS

Sergei Sergeevich in Django [ru] #STAY HOME
Anton Fircak
он же на one to one
"select_related is limited to single-valued relationships - foreign key and one-to-one."
источник

С

Сергей in Django [ru] #STAY HOME
Anton Fircak
перезапусти вручную
не помогло
источник