From 1b5b5106bafc24f5c2c1096b722fb9544d467a28 Mon Sep 17 00:00:00 2001 From: Daan Sprenkels Date: Mon, 15 Jun 2020 15:18:37 +0200 Subject: [PATCH] report-note: admin: Add a link to relevant song Previously, the admin could not directly move from a report note to its corresponding song. This commit adds a link that will go directly to the "change" page for the corresponding song. --- marietje/songs/admin.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/marietje/songs/admin.py b/marietje/songs/admin.py index 79f456a..b6b1b6c 100644 --- a/marietje/songs/admin.py +++ b/marietje/songs/admin.py @@ -1,4 +1,6 @@ from django.contrib import admin +from django.urls import reverse +from django.utils.html import format_html from .models import ReportNote, Song @@ -32,4 +34,11 @@ class SongAdmin(admin.ModelAdmin): class ReportNoteAdmin(admin.ModelAdmin): list_display = ('song', 'note', 'user') search_fields = ('song__artist', 'song__title', 'user__name') - readonly_fields = ('song',) + readonly_fields = ('song_link',) + + @staticmethod + def song_link(note): + url = reverse("admin:songs_song_change", args=(note.song.id,)) + return format_html("{song}", url=url, song=note.song) + + song_link.short_description = "Song link"