Ultron/followup/admin.py

78 lines
2.2 KiB
Python

from django.contrib import admin
from django.db.models import fields
from config.views import search
from .models import Chrono, LearnedSkill, Point, Accident, MindState, GymnastHasRoutine
from django_extensions.admin import ForeignKeyAutocompleteAdmin
class ChronoAdmin(ForeignKeyAutocompleteAdmin):
model = Chrono
list_display = ('date', 'gymnast', 'tof', 'type')
list_filter = ('type', )
# search_fields = ('gymnast', 'routine')
autocomplete_fields = ['gymnast']
related_search_fields = {
'gymnast': ('last_name', 'first_name')
}
class LearnedSkillAdmin(admin.ModelAdmin):
model = LearnedSkill
list_display = ('gymnast', 'skill', 'cando', 'date')
list_filter = ('gymnast', 'skill', 'cando')
search_fields = ('gymnast', 'skill')
autocomplete_fields = ['gymnast', 'skill']
class PointAdmin(admin.ModelAdmin):
model = Point
list_display = (
"gymnast",
"point_execution",
"point_difficulty",
"point_time_of_flight",
"total",
)
ordering = ("gymnast",)
list_filter = ("gymnast", "event", "routine_type")
class AccidentAdmin(admin.ModelAdmin):
model = Accident
fields = ('date', 'gymnast', 'skill', 'informations') # educative
list_display = ('date', 'gymnast', 'skill') # educative
list_filter = ('date',)
search_fields = ('date', 'gymnast') # educative
autocomplete_fields = ['gymnast'] # educative
class MindStateAdmin(admin.ModelAdmin):
model = MindState
fields = ('gymnast', 'date', 'score', 'informations')
list_display = ('date', 'gymnast', 'score')
list_filter = ('date', 'gymnast')
class GymnastHasRoutineAdmin(ForeignKeyAutocompleteAdmin):
model = GymnastHasRoutine
list_display = ('gymnast', 'routine', 'routine_type', 'datebegin', 'dateend')
list_filter = ('gymnast', 'routine_type')
search_fields = ('gymnast', 'routine')
autocomplete_fields = ('gymnast', 'routine')
admin.site.register(Accident, AccidentAdmin)
admin.site.register(Point, PointAdmin)
admin.site.register(Chrono, ChronoAdmin)
admin.site.register(LearnedSkill, LearnedSkillAdmin)
admin.site.register(MindState, MindStateAdmin)
admin.site.register(GymnastHasRoutine, GymnastHasRoutineAdmin)