Можно ли создать набор запросов django, используя комбинацию полей модели и @property из модели Foreignkey?
У меня есть следующие модели:
class Person(models.Model):
firstname = models.CharField(max_length=255)
prefname = models.CharField(max_length=255,null=True,blank=True)
surname = models.CharField(max_length=255,null=True,blank=True)
def __str__(self):
return str(self.person_name) if self.person_name else ''
@property
def person_name(self):
if not self.surname:
if not self.prefname:
return self.firstname
return self.prefname
if not self.prefname:
return ''.join([self.firstname,' ', self.surname])
return ''.join([self.prefname,' ', self.surname])
class Task(models.Model):
person = models.ForeignKey(Person)
status = models.CharField(max_length=255,choices=(('OPEN','Open'),('CLOSED','Closed'))
Я пытаюсь создать набор запросов с:
qs = Task.objects.all().values_list('person__person_name','status')
Я получаю сообщение об ошибке "person__person_name", что это недоступное поле, я думаю, потому что person_name - это @property, а не фактическое поле модели из модели Foreignkey.
Есть ли способ обойти это? Любая помощь высоко ценится!