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

1from django.contrib import admin 

2from polymorphic.admin import PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter 

3 

4from . import models 

5 

6class ProjectChildAdmin(PolymorphicChildModelAdmin): 

7 """ Base admin class for all child models """ 

8 base_model = models.Project # Optional, explicitly set here. 

9 

10 

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. 

16 

17 

18class AttributeChildAdmin(PolymorphicChildModelAdmin): 

19 base_model = models.Attribute 

20 

21 

22@admin.register(models.CharAttribute) 

23class CharAttributeAdmin(AttributeChildAdmin): 

24 pass 

25 

26 

27@admin.register(models.IntegerAttribute) 

28class IntegerAttributeAdmin(AttributeChildAdmin): 

29 pass 

30 

31 

32@admin.register(models.FilesizeAttribute) 

33class FilesizeAttributeAdmin(AttributeChildAdmin): 

34 pass 

35 

36 

37@admin.register(models.FloatAttribute) 

38class FloatAttributeAdmin(AttributeChildAdmin): 

39 pass 

40 

41 

42@admin.register(models.URLAttribute) 

43class URLAttributeAdmin(AttributeChildAdmin): 

44 pass 

45 

46 

47@admin.register(models.LatLongAttribute) 

48class LatLongAttributeAdmin(AttributeChildAdmin): 

49 pass 

50 

51 

52@admin.register(models.DateTimeAttribute) 

53class DateTimeAttributeAdmin(AttributeChildAdmin): 

54 pass 

55 

56 

57@admin.register(models.DateAttribute) 

58class DateAttributeAdmin(AttributeChildAdmin): 

59 pass 

60 

61 

62@admin.register(models.BooleanAttribute) 

63class BooleanAttributeAdmin(AttributeChildAdmin): 

64 pass 

65 

66 

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. 

81 

82 

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) 

88 

89