Coverage for crunch/django/app/admin.py: 100.00%
43 statements
« prev ^ index » next coverage.py v6.5.0, created at 2023-10-01 13:43 +0000
« prev ^ index » next coverage.py v6.5.0, created at 2023-10-01 13:43 +0000
1from django.contrib import admin
2from polymorphic.admin import PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter
4from . import models
6class ProjectChildAdmin(PolymorphicChildModelAdmin):
7 """ Base admin class for all child models """
8 base_model = models.Project # Optional, explicitly set here.
11# @admin.register(models.Project)
12# class ProjectParentAdmin(PolymorphicParentModelAdmin):
13# """ The parent model admin """
14# base_model = models.Project # Optional, explicitly set here.
15# list_filter = (PolymorphicChildModelFilter,) # This is optional.
18class AttributeChildAdmin(PolymorphicChildModelAdmin):
19 base_model = models.Attribute
22@admin.register(models.CharAttribute)
23class CharAttributeAdmin(AttributeChildAdmin):
24 pass
27@admin.register(models.IntegerAttribute)
28class IntegerAttributeAdmin(AttributeChildAdmin):
29 pass
32@admin.register(models.FilesizeAttribute)
33class FilesizeAttributeAdmin(AttributeChildAdmin):
34 pass
37@admin.register(models.FloatAttribute)
38class FloatAttributeAdmin(AttributeChildAdmin):
39 pass
42@admin.register(models.URLAttribute)
43class URLAttributeAdmin(AttributeChildAdmin):
44 pass
47@admin.register(models.LatLongAttribute)
48class LatLongAttributeAdmin(AttributeChildAdmin):
49 pass
52@admin.register(models.DateTimeAttribute)
53class DateTimeAttributeAdmin(AttributeChildAdmin):
54 pass
57@admin.register(models.DateAttribute)
58class DateAttributeAdmin(AttributeChildAdmin):
59 pass
62@admin.register(models.BooleanAttribute)
63class BooleanAttributeAdmin(AttributeChildAdmin):
64 pass
67@admin.register(models.Attribute)
68class AttributeParentAdmin(PolymorphicParentModelAdmin):
69 base_model = models.Attribute # Optional, explicitly set here.
70 child_models = (
71 models.IntegerAttribute,
72 models.FilesizeAttribute,
73 models.FloatAttribute,
74 models.CharAttribute,
75 models.URLAttribute,
76 models.BooleanAttribute,
77 models.DateAttribute,
78 models.DateTimeAttribute,
79 ) # This should be automatic
80 list_filter = (PolymorphicChildModelFilter,) # This is optional.
83admin.site.register(models.Project)
84admin.site.register(models.Dataset)
85admin.site.register(models.Item)
86admin.site.register(models.Status)
87# admin.site.register(models.Attribute)