Django - Возврат двух атрибутов из модели

Как вернуть два атрибута из модели?

Модель транспортного средства

class Vehicle(models.Model):
    unit = models.CharField(max_length=10, help_text="Unit number for the vehicle")
    vin = models.CharField(max_length=17, unique=True, validators=[MinLengthValidator(17)],  help_text="VIN of the vehicle", primary_key=True)
...
    def __str__(self):
        return self.unit

Модель назначения

class NewAppt(models.Model):
...
    unit = models.ForeignKey(Vehicle, on_delete=models.SET_NULL, null=True)
    vin = models.ForeignKey(Vehicle, related_name='VIN', on_delete=models.SET_NULL, null=True)
...
    def save(self, **kwargs):
        self.vin = Vehicle.objects.get(unit=self.unit)
        super().save(**kwargs)

Когда он возвращается, он возвращает только номер единицы в представлении администратора.

Если я меняю self.vin = Vehicle.objects.get(unit=self.unit) на self.vin = self.unit.vin, то получаю ошибку: Cannot assign "'1XPTD4EXOCD128815'": "NewAppt.vin" must be a "Vehicle" instance.

Вернуться на верх