Files
fet2020/fet2020/intern/admin.py

89 lines
2.4 KiB
Python
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from django.contrib import admin
from django.db.models import F
from .models import TopicGroup, Topic, Documentation, Document, FileUpload
from .forms import TopicGroupAdminForm, TopicAdminForm, DocumentationAdminForm, DocumentAdminForm
class DocumentationInline(admin.TabularInline):
model = Documentation
form = DocumentationAdminForm
extra = 0
verbose_name = "Dokument"
verbose_name_plural = "Dokument-Übersicht"
class FileUploadInline(admin.TabularInline):
model = FileUpload
extra = 0
verbose_name = "Dokument"
verbose_name_plural = "Do­ku­men­ten­samm­lung"
class TopicInline(admin.TabularInline):
model = Topic
form = TopicAdminForm
extra = 0
verbose_name = "Thema"
verbose_name_plural = "Themen"
show_change_link = True
class TopicGroupAdmin(admin.ModelAdmin):
form = TopicGroupAdminForm
model = TopicGroup
search_fields = ("title", )
inlines = (TopicInline,)
list_display = ["title", "order"]
ordering = [F("order").asc(nulls_last=True)]
def save_model(self, request, obj, form, change):
obj.created_by = request.user
super().save_model(request, obj, form, change)
class TopicAdmin(admin.ModelAdmin):
form = TopicAdminForm
model = Topic
search_fields = ("title",)
inlines = (DocumentationInline, )
list_filter = ["topic_group", "archive"]
list_display = ["title", "topic_group", "archive"]
ordering = ["archive"]
def save_model(self, request, obj, form, change):
obj.created_by = request.user
super().save_model(request, obj, form, change)
class DocumentationAdmin(admin.ModelAdmin):
form = DocumentationAdminForm
model = Documentation
list_display = ["title", "topic",]
def save_model(self, request, obj, form, change):
obj.created_by = request.user
super().save_model(request, obj, form, change)
class DocumentAdmin(admin.ModelAdmin):
form = DocumentAdminForm
model = Document
list_filter = ["documentation",]
list_display = ["title", "date", "documentation",]
ordering = ["-date"]
def save_model(self, request, obj, form, change):
obj.created_by = request.user
super().save_model(request, obj, form, change)
admin.site.register(TopicGroup, TopicGroupAdmin)
admin.site.register(Topic, TopicAdmin)
#admin.site.register(Documentation, DocumentationAdmin)
admin.site.register(Document, DocumentAdmin)