You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.6 KiB
37 lines
1.6 KiB
from django.contrib import admin
|
|
import main.models as MainDB
|
|
|
|
# Register your models here.
|
|
@admin.register(MainDB.contributors)
|
|
class MainDB_contributorsAdmin(admin.ModelAdmin):
|
|
|
|
list_display = ('id', 'da_approval', 'teamleader', 'second_teamleader', 'gender', 'full_name', 'birthday_year', 'get_congregation', 'pioneer', 'get_deparment', 'mobilnumber', 'email')
|
|
|
|
# list_filter = ('gender', 'roles', 'deparment', 'congregation')
|
|
|
|
search_fields = ('name', 'firstname', 'congregation__title', 'deparment__title', 'mobilnumber', 'email')
|
|
|
|
def get_congregation(self, obj):
|
|
# Gebe eine durch Komma getrennte Liste der Namen der contributors zurück
|
|
return ", ".join([str(congregation) for congregation in obj.congregation.all()])
|
|
get_congregation.short_description = 'Versammlung' # Optional: Benennung der Spalte
|
|
|
|
def get_deparment(self, obj):
|
|
# Gebe eine durch Komma getrennte Liste der Namen der contributors zurück
|
|
return ", ".join([str(deparment) for deparment in obj.deparment.all()])
|
|
get_deparment.short_description = 'Abteilung' # Optional: Benennung der Spalte
|
|
|
|
# Methode, um den vollständigen Namen zu kombinieren
|
|
def full_name(self, obj):
|
|
return f"{obj.name}, {obj.firstname}"
|
|
full_name.short_description = 'Name' # Spaltenüberschrift im Admin ändern
|
|
|
|
# Methode, um nur das Jahr des Birthdays anzuzeigen
|
|
def birthday_year(self, obj):
|
|
return obj.birthday.year if obj.birthday else None
|
|
birthday_year.short_description = 'Geburtsjahr'
|
|
|
|
|
|
admin.site.register(MainDB.department)
|
|
admin.site.register(MainDB.congregation)
|
|
admin.site.register(MainDB.role) |