Files
he-database/sheets/admin.py
2025-08-28 12:22:27 +02:00

45 lines
1.5 KiB
Python

from django.contrib import admin
from .models import Client # Only import Client
from .models import SecondTableEntry
# Register only the Client model
@admin.register(Client)
class ClientAdmin(admin.ModelAdmin):
list_display = ('name', 'address')
search_fields = ('name',)
# Optional: Customize the add form fields
fields = ['name', 'address']
@admin.register(SecondTableEntry)
class SecondTableEntryAdmin(admin.ModelAdmin):
list_display = ('id', 'client', 'date', 'is_warm', 'lhe_output_short', 'notes_preview')
list_display_links = ('id', 'client') # Fields that link to edit page
list_editable = ('is_warm',)
list_filter = ('is_warm', 'client')
search_fields = ('client__name', 'notes')
date_hierarchy = 'date'
ordering = ('-date',)
fieldsets = (
(None, {
'fields': ('client', 'date')
}),
('LHe Data', {
'fields': ('is_warm', 'lhe_delivery', 'lhe_output'),
'description': 'Enter all liquid helium measurements'
}),
('Additional Info', {
'fields': ('notes',),
'classes': ('collapse',)
})
)
# Custom display methods
def lhe_output_short(self, obj):
return f"{obj.lhe_output} L" if obj.lhe_output else "-"
lhe_output_short.short_description = 'Output'
def notes_preview(self, obj):
return obj.notes[:30] + '...' if obj.notes else ""
notes_preview.short_description = 'Notes Preview'