-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathadmin.py
52 lines (42 loc) · 1.6 KB
/
admin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.contrib import admin
from .models import MuscleGroup, WorkoutSummary, Exercise, WorkoutDetail, WeightHistory, BodyAreas, UserProfile
from .forms import MuscleGroupForm
from django.contrib.auth.models import User
class WorkoutDetailInline(admin.TabularInline):
model = WorkoutDetail
class WorkoutAdmin(admin.ModelAdmin):
inlines = [WorkoutDetailInline]
class GroupExerciseInline(admin.TabularInline):
model = Exercise.group.through
verbose_name_plural = "Exercises"
class GroupHierarchyInline(admin.TabularInline):
model = MuscleGroup
fk_name = "parent"
verbose_name_plural = "Children"
class MuscleGroupAdmin(admin.ModelAdmin):
form = MuscleGroupForm
fieldsets = (
(None, {
'fields': ('name', 'color', 'area', 'parent', 'display_in_list', 'type')
}),
)
inlines = [GroupHierarchyInline, GroupExerciseInline]
ordering = ['parent_id', 'name']
list_display = ['name', 'area', 'parent']
class ExerciseAdmin(admin.ModelAdmin):
search_fields = ['name', 'group__name']
list_display = ["name", "main_group"]
class BodyAreaInline(admin.TabularInline):
model = MuscleGroup
class BodyAreaAdmin(admin.ModelAdmin):
inlines = [BodyAreaInline]
# Register your models here.
admin.site.register(BodyAreas, BodyAreaAdmin)
admin.site.register(MuscleGroup, MuscleGroupAdmin)
admin.site.register(WorkoutSummary, WorkoutAdmin)
admin.site.register(WorkoutDetail)
admin.site.register(Exercise, ExerciseAdmin)
admin.site.register(WeightHistory)
admin.site.register(UserProfile)