Панель администратора Django показывает данные ForeignKey

Я пытаюсь отобразить дополнительную информацию в панели администратора и не могу. У меня есть две модели с внешним ключом Я пытаюсь показать список улиц и добавить к названию улицы название города

class Street(models.Model):
name = models.CharField(max_length=50, verbose_name='Street')
code = models.IntegerField()
city = models.ForeignKey('City', on_delete=models.PROTECT, null=True)

class Meta:
    managed = True
    db_table = 'street'

def __str__(self):
    return self.name + f'({self.city.name})'

class City(models.Model):
name = models.CharField(max_length=50, verbose_name='City')
code = models.IntegerField()

class Meta:
    managed = True
    db_table = 'city'

def __str__(self):
    return self.name+ f' ({self.code})'

Если я правильно понял вашу проблему, нижеприведенный код должен работать. Без изображения мне трудно понять

admin.py

from django.contrib import admin
from .models import Street

class StreetAdmin(admin.ModelAdmin):
    list_display = ('id', 'name', 'city')

admin.site.register(Street, StreetAdmin)

Одна из улиц была связана с городом, который я удалил из базы данных, поэтому я получил ошибку

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