From 66c3c3f51c7ef072eb0a14bfcd03b6cb59984e13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniele=20Vigan=C3=B2?= Date: Wed, 3 Dec 2025 23:24:53 +0100 Subject: [PATCH] Extend compatibility with Django 6.0 --- ram/bookshelf/admin.py | 26 ++++++++++++++------------ ram/consist/admin.py | 2 +- ram/metadata/admin.py | 4 ++-- ram/ram/utils.py | 5 +++-- ram/roster/admin.py | 17 +++++++++-------- 5 files changed, 29 insertions(+), 25 deletions(-) diff --git a/ram/bookshelf/admin.py b/ram/bookshelf/admin.py index 0e8a88b..a5bf51c 100644 --- a/ram/bookshelf/admin.py +++ b/ram/bookshelf/admin.py @@ -2,7 +2,7 @@ import html from django.conf import settings from django.contrib import admin -from django.utils.html import format_html, strip_tags +from django.utils.html import format_html, format_html_join, strip_tags from adminsortable2.admin import SortableAdminBase, SortableInlineAdminMixin from ram.admin import publish, unpublish @@ -123,13 +123,14 @@ class BookAdmin(SortableAdminBase, admin.ModelAdmin): @admin.display(description="Invoices") def invoices(self, obj): if obj.invoice.exists(): - html = "
".join( - "{}".format( - i.file.url, i - ) for i in obj.invoice.all()) + html = format_html_join( + "
", + "{}", + ((i.file.url, i) for i in obj.invoice.all()) + ) else: html = "-" - return format_html(html) + return html @admin.display(description="Publisher") def get_publisher(self, obj): @@ -207,7 +208,7 @@ class PublisherAdmin(admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country.name) + ' {}', obj.country.flag, obj.country.name ) @@ -285,13 +286,14 @@ class CatalogAdmin(SortableAdminBase, admin.ModelAdmin): @admin.display(description="Invoices") def invoices(self, obj): if obj.invoice.exists(): - html = "
".join( - "{}".format( - i.file.url, i - ) for i in obj.invoice.all()) + html = format_html_join( + "
", + "{}", + ((i.file.url, i) for i in obj.invoice.all()) + ) else: html = "-" - return format_html(html) + return html def download_csv(modeladmin, request, queryset): header = [ diff --git a/ram/consist/admin.py b/ram/consist/admin.py index 472b6a0..135760a 100644 --- a/ram/consist/admin.py +++ b/ram/consist/admin.py @@ -54,7 +54,7 @@ class ConsistAdmin(SortableAdminBase, admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country) + ' {}', obj.country.flag, obj.country ) fieldsets = ( diff --git a/ram/metadata/admin.py b/ram/metadata/admin.py index c017394..d3f30b5 100644 --- a/ram/metadata/admin.py +++ b/ram/metadata/admin.py @@ -54,7 +54,7 @@ class CompanyAdmin(admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country.name) + ' {}', obj.country.flag, obj.country.name ) @@ -68,7 +68,7 @@ class ManufacturerAdmin(admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country.name) + ' {}', obj.country.flag, obj.country.name ) diff --git a/ram/ram/utils.py b/ram/ram/utils.py index b5c5e94..f60b1f3 100644 --- a/ram/ram/utils.py +++ b/ram/ram/utils.py @@ -48,8 +48,9 @@ def git_suffix(fname): def get_image_preview(url, max_size=150): return format_html( - ''.format(src=url, size=max_size) + '', # noqa: E501 + src=url, + size=max_size, ) diff --git a/ram/roster/admin.py b/ram/roster/admin.py index e7908fa..9d291e2 100644 --- a/ram/roster/admin.py +++ b/ram/roster/admin.py @@ -2,7 +2,7 @@ import html from django.conf import settings from django.contrib import admin -from django.utils.html import format_html, strip_tags +from django.utils.html import format_html, format_html_join, strip_tags from adminsortable2.admin import SortableAdminBase, SortableInlineAdminMixin @@ -44,7 +44,7 @@ class RollingClass(admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country) + ' {}', obj.country.flag, obj.country.name ) @@ -152,7 +152,7 @@ class RollingStockAdmin(SortableAdminBase, admin.ModelAdmin): @admin.display(description="Country") def country_flag(self, obj): return format_html( - ' {}'.format(obj.country.flag, obj.country) + ' {}', obj.country.flag, obj.country.name ) fieldsets = ( @@ -222,13 +222,14 @@ class RollingStockAdmin(SortableAdminBase, admin.ModelAdmin): @admin.display(description="Invoices") def invoices(self, obj): if obj.invoice.exists(): - html = "
".join( - "{}".format( - i.file.url, i - ) for i in obj.invoice.all()) + html = format_html_join( + "
", + "{}", + ((i.file.url, i) for i in obj.invoice.all()) + ) else: html = "-" - return format_html(html) + return html def download_csv(modeladmin, request, queryset): header = [