Как показать имя пользователя в форме администратора django для подключенной модели?
У меня есть две модели, одна - модель пользователя, другая - модель автомобиля.
class User(models.Model):
id = models.BigAutoField(primary_key=True)
username = models.CharField(max_length=50, verbose_name="User Name")
class Cars(models.Model):
id = models.BigAutoField(primary_key=True)
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='cars')
Теперь на странице /admin/app/cars/1/change/ я хочу видеть имя пользователя как обычный текст в этой форме под выпадающим списком пользователей.
Я пробовал с inline stack, но это не сработало, и выдает ошибку, User должен быть внешним ключом к Cars.
Текст, отображаемый в панели администратора, определяется функцией __str__, поэтому добавление чего-то вроде
def __str__(self):
return self.username
вашей модели пользователя должно быть достаточно
сделайте это
class Cars(models.Model):
id = models.BigAutoField(primary_key=True)
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='cars')
def __str__(self):
return self.user.username