add search field and improve look & feel

This commit is contained in:
erichhasl
2018-07-11 22:14:26 +02:00
parent adb47b9e9a
commit 870f045501
2 changed files with 6 additions and 7 deletions
+4 -5
View File
@@ -17,21 +17,19 @@ class ZugeteiltFilter(admin.SimpleListFilter):
return ( return (
('Alle', 'Alle'), ('Alle', 'Alle'),
('True', 'Zugeteilt'), ('True', 'Zugeteilt'),
# ('More', 'Mehrfach zugeteilt'),
('False', 'Nicht zugeteilt'), ('False', 'Nicht zugeteilt'),
) )
def queryset(self, request, queryset): def queryset(self, request, queryset):
if self.value() == 'True': if self.value() == 'True':
print("filter auf true") print("filter auf true")
return queryset.filter(betriebe__gt=0) return queryset.filter(betriebe__gt=0).distinct()
elif self.value() == 'False': elif self.value() == 'False':
print("filter auf false") print("filter auf false")
return queryset.filter(betriebe__exact=None) return queryset.filter(betriebe__exact=None).distinct()
elif self.value() is None: elif self.value() is None:
if self.default_value[1] is None:
return queryset return queryset
else:
return [x for x in queryset if x.zugeteilt() == self.default_value[1]]
elif self.value() == 'All': elif self.value() == 'All':
return queryset return queryset
@@ -122,6 +120,7 @@ class QuestionAdmin(admin.ModelAdmin):
class AngestellterAdmin(admin.ModelAdmin): class AngestellterAdmin(admin.ModelAdmin):
list_display = ('name', 'klasse', 'is_teacher', 'show_betriebe', 'zugeteilt') list_display = ('name', 'klasse', 'is_teacher', 'show_betriebe', 'zugeteilt')
list_filter = (ZugeteiltFilter,) list_filter = (ZugeteiltFilter,)
search_fields = ('name', 'klasse')
admin.site.register(Betrieb, BetriebAdmin) admin.site.register(Betrieb, BetriebAdmin)
admin.site.register(Partei, ParteiAdmin) admin.site.register(Partei, ParteiAdmin)
+1 -1
View File
@@ -10,7 +10,7 @@ class Angestellter(models.Model):
return "{} ({})".format(self.name, self.klasse) return "{} ({})".format(self.name, self.klasse)
def show_betriebe(self): def show_betriebe(self):
return ",".join([str(b) for b in self.betriebe.all()]) return ", ".join([str(b) for b in self.betriebe.all()])
show_betriebe.short_description = "Betriebe" show_betriebe.short_description = "Betriebe"
def zugeteilt(self): def zugeteilt(self):