Add some ordering directives and admin improvements

This commit is contained in:
Claude Paroz 2012-11-13 16:55:46 +01:00
parent a6639e54e8
commit f0f9458517
3 changed files with 19 additions and 2 deletions

View file

@ -1,4 +1,6 @@
from django import forms
from django.contrib import admin
from django.db import models
from stages.models import (Student, Section, Klass, Referent, Corporation, CorpContact,
Domain, Period, Availability, Training)
@ -12,6 +14,10 @@ class StudentAdmin(admin.ModelAdmin):
'birth_date', 'klass', 'archived')
class ReferentAdmin(admin.ModelAdmin):
list_display = ('__unicode__', 'abrev')
class CorpContactAdmin(admin.ModelAdmin):
list_display = ('__unicode__', 'corporation', 'role')
fields = ('corporation', ('title', 'last_name', 'first_name'),
@ -26,6 +32,7 @@ class ContactInline(admin.StackedInline):
class CorporationAdmin(admin.ModelAdmin):
list_display = ('name', 'pcode', 'city')
search_fields = ('name', 'pcode', 'city')
ordering = ('name',)
fields = ('name', 'typ', 'street', ('pcode', 'city'), ('tel', 'email'),
'web', 'archived')
inlines = [ContactInline]
@ -34,6 +41,10 @@ class CorporationAdmin(admin.ModelAdmin):
class AvailabilityInline(admin.TabularInline):
model = Availability
extra = 1
formfield_overrides = {
models.TextField: {'widget': forms.Textarea(attrs={'rows':2, 'cols':40})},
}
class PeriodAdmin(admin.ModelAdmin):
list_display = ('title', 'dates', 'section')
@ -46,11 +57,16 @@ class AvailabilityAdmin(admin.ModelAdmin):
list_filter = ('period',)
fields = (('corporation', 'period'), 'domain', 'comment')
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == "corporation":
kwargs["queryset"] = Corporation.objects.filter(archived=False).order_by('name')
return super(AvailabilityAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
admin.site.register(Section)
admin.site.register(Klass)
admin.site.register(Student, StudentAdmin)
admin.site.register(Referent)
admin.site.register(Referent, ReferentAdmin)
admin.site.register(Corporation, CorporationAdmin)
admin.site.register(CorpContact, CorpContactAdmin)
admin.site.register(Domain)

View file

@ -120,6 +120,7 @@ class Domain(models.Model):
class Meta:
verbose_name = "Domaine"
ordering = ('name',)
def __unicode__(self):
return self.name

View file

@ -38,7 +38,7 @@ class AttributionView(TemplateView):
context.update({
#'period_form': PeriodForm(),
'sections': Section.objects.all(),
'referents': Referent.objects.all(),
'referents': Referent.objects.all().order_by('last_name', 'first_name'),
})
return context