From 4fece110d92ad47af2d7cd1238ccba724ac0c39a Mon Sep 17 00:00:00 2001
From: "Adrian A. Baumann"
Date: Mon, 10 Nov 2025 09:32:51 +0100
Subject: [PATCH] Added list of Vorgaben to Referenz-Admin
---
argocd/deployment.yaml | 2 +-
dokumente/admin.py | 1 -
pages/templates/base.html | 2 +-
referenzen/admin.py | 49 +++++++++++++++++++++++++++++++++++++--
stichworte/admin.py | 2 +-
5 files changed, 50 insertions(+), 6 deletions(-)
diff --git a/argocd/deployment.yaml b/argocd/deployment.yaml
index f7a300e..8568809 100644
--- a/argocd/deployment.yaml
+++ b/argocd/deployment.yaml
@@ -25,7 +25,7 @@ spec:
mountPath: /data
containers:
- name: web
- image: git.baumann.gr/adebaumann/vui:0.950-oblique
+ image: git.baumann.gr/adebaumann/vui:0.951-oblique
imagePullPolicy: Always
ports:
- containerPort: 8000
diff --git a/dokumente/admin.py b/dokumente/admin.py
index 255fa2e..55733e5 100644
--- a/dokumente/admin.py
+++ b/dokumente/admin.py
@@ -294,6 +294,5 @@ class VorgabeAdmin(NestedModelAdmin):
admin.site.register(Checklistenfrage)
admin.site.register(Dokumententyp)
#admin.site.register(Person)
-#admin.site.register(Referenz, DraggableM§PTTAdmin)
#admin.site.register(Changelog)
diff --git a/pages/templates/base.html b/pages/templates/base.html
index 39f4954..8848e01 100644
--- a/pages/templates/base.html
+++ b/pages/templates/base.html
@@ -180,7 +180,7 @@
-
Version {{ version|default:"0.950" }}
+
Version {{ version|default:"0.951" }}
diff --git a/referenzen/admin.py b/referenzen/admin.py
index cb3ea2c..090d64c 100644
--- a/referenzen/admin.py
+++ b/referenzen/admin.py
@@ -1,4 +1,5 @@
from django.contrib import admin
+from django.utils.html import format_html
from nested_admin import NestedStackedInline, NestedModelAdmin, NestedTabularInline
from .models import *
@@ -11,6 +12,50 @@ class ReferenzerklaerungInline(NestedStackedInline):
@admin.register(Referenz)
class ReferenzAdmin(NestedModelAdmin):
+ list_display = ('Path', 'vorgaben_count')
inlines=[ReferenzerklaerungInline]
- list_display =['Path']
- search_fields=("referenz","path")
+ search_fields=("name_nummer","Path")
+ readonly_fields=("vorgaben_list",)
+ fieldsets = (
+ (None, {
+ 'fields': ('name_nummer','name_text','oberreferenz','url', 'vorgaben_list')
+ }),
+ )
+
+ def vorgaben_count(self, obj):
+ """Count the number of Vorgaben that have this Stichwort"""
+ count = obj.vorgabe_set.count()
+ return f"{count} Vorgabe{'n' if count != 1 else ''}"
+ vorgaben_count.short_description = "Anzahl Vorgaben"
+
+ def vorgaben_list(self, obj):
+ """Display list of Vorgaben that use this Stichwort"""
+ vorgaben = obj.vorgabe_set.order_by('dokument__nummer', 'nummer')
+ vorgaben_list = list(vorgaben) # Evaluate queryset once
+ count = len(vorgaben_list)
+ if count == 0:
+ return format_html("