From f580bcffc56b99a1ce2e95b5be58a4f3cd122ee8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniele=20Vigan=C3=B2?= Date: Mon, 22 Aug 2022 17:12:22 +0200 Subject: [PATCH] Documents section in admin --- ram/roster/admin.py | 16 ++++++++++++++++ ram/roster/models.py | 8 +++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/ram/roster/admin.py b/ram/roster/admin.py index 970e593..2dde810 100644 --- a/ram/roster/admin.py +++ b/ram/roster/admin.py @@ -46,6 +46,22 @@ class RollingStockPropertyInline(admin.TabularInline): extra = 0 +@admin.register(RollingStockDocument) +class RollingStockDocumentAdmin(admin.ModelAdmin): + list_display = ( + "__str__", + "rolling_stock", + "description", + "download", + ) + search_fields = ( + "rolling_stock__rolling_class__identifier", + "rolling_stock__sku", + "description", + "file", + ) + + @admin.register(RollingStock) class RollingStockAdmin(admin.ModelAdmin): inlines = ( diff --git a/ram/roster/models.py b/ram/roster/models.py index 52b4e8a..2c7e589 100644 --- a/ram/roster/models.py +++ b/ram/roster/models.py @@ -4,6 +4,7 @@ from uuid import uuid4 from django.db import models from django.urls import reverse from django.dispatch import receiver +from django.utils.safestring import mark_safe # from django.core.files.storage import FileSystemStorage @@ -141,7 +142,12 @@ class RollingStockDocument(models.Model): return "{0}".format(os.path.basename(self.file.name)) def filename(self): - return os.path.basename(self.file.name) + return self.__str__ + + def download(self): + return mark_safe( + "Link".format(self.file.url) + ) class RollingStockImage(models.Model):