Ссылка на объект с другой модели в админ панели джанго
Мне нужно сделать так, чтобы в админ-панели Beats было отображение ссылки на объект из модели User, который привязан по Foreign Key.
class User(AbstractUser):
email = models.EmailField(_("email address"), unique=True, blank=False)
allowed_to_add = models.BooleanField('Может ли добавлять треки?', default=True)
def __str__(self):
return self.username
class Beat(models.Model):
def content_file_name(instance, filename):
return '/'.join(['content', instance.name[0], filename])
url = models.CharField(verbose_name='Ссылка на бит', max_length=200, blank=True)
name = models.CharField(verbose_name='Название трека', max_length=50)
audio = models.FileField(verbose_name='Файл с битом',upload_to=content_file_name)
slug = models.SlugField(default='', null=False, db_index=True)
genre = models.ForeignKey(Genre, on_delete=models.DO_NOTHING, verbose_name='Жанр трека', blank=True, null=True, related_name='beats')
author = models.ManyToManyField(Author, verbose_name='Исполнитель(исполнители) трека', blank=True, related_name='beats')
album = models.ForeignKey(Album, on_delete=models.DO_NOTHING, verbose_name='Альбом', blank=True, null=True)
is_published = models.BooleanField(verbose_name="Выкладывать?", default=False)
added_by = models.ForeignKey(User, on_delete=models.DO_NOTHING, blank=True, null=True, verbose_name="Кто добавил?")
def save(self, *args, **kwargs):
self.slug = slugify(self.name)
super(Beat, self).save(*args, **kwargs)
authors = ''
def __str__(self):
for author in list(self.author.all()):
self.authors += str(author) + ' '
return self.authors + '- ' + self.name
В list_display запихнул added_by, но нужно чтобы это было ссылкой.
class BeatAdmin(admin.ModelAdmin):
list_display = ["name", "is_published", "added_by"]
search_fields = ["added_by__username"]
list_editable = ["is_published"]
exclude = ['slug']