У меня есть две связанные django модели, одна из которых предоставляет значение по умолчанию для экземпляров второй модели. Вот моя реализация:
from django.db import models
class Manufacturer(models.model):
default_attribute = models.CharField()
class Product(models.Model):
updated_attribute = models.CharField(null=True, blank=True)
manufacturer = models.ForeignKey(Manufacturer)
@property
def attribute(self):
if self.updated_attribute is not None:
return self.updated_attribute
else:
return self.manufacturer.default_attribute
Поведение, которое я хотел бы (и которое смоделировано здесь), заключается в том, что если product
s updated_attribute
не указано, product.attribute
по умолчанию соответствует default_attribute
производителя. Если указано product.updated_attribute
, используется экземпляр продукта updated_attribute
.
Есть ли django собственный шаблон для этого, который я пропустил?