Exercise sorting

This commit is contained in:
Bossanyi Tibor 2021-03-08 14:46:38 +01:00
parent 78c6dbee71
commit 693893eee4
3 changed files with 31 additions and 9 deletions

View File

@ -3,15 +3,18 @@ from abc import ABC
from django.contrib import admin
from django.utils.html import format_html
from django.utils.translation import ugettext_lazy as _
#from treenode.admin import TreeNodeModelAdmin
#from treenode.forms import TreeNodeForm
from .models import ExerciseType, ExerciseTypeAlternative, ExerciseTypeParents
from .models import Product
from .models import ExerciseDevice, ExerciseDeviceTranslation, ExerciseTypeDevice, ExerciseDeviceAlternative
from .models import ExerciseTypeImage
from .models import ExerciseTypeTranslation
from .models import ExerciseTreeTranslation
from .models import ExerciseTree, ExerciseTreeParents
from .models import ExerciseTree
from .models import ExerciseTreeParents
from .models import ExercisePlanTranslation
from .models import ExercisePlanDetail
from .models import ExercisePlan
from .models import ExercisePlanTemplate, ExercisePlanTemplateTranslation, ExercisePlanTemplateDetail
@ -34,6 +37,18 @@ class ExerciseTreeParentsInline(admin.TabularInline):
extra = 0
'''
class ExerciseTreeParentAdmin(TreeNodeModelAdmin):
treenode_display_mode = TreeNodeModelAdmin.TREENODE_DISPLAY_MODE_ACCORDION
list_display = ('name',)
# use TreeNodeForm to automatically exclude invalid parent choices
form = TreeNodeForm
'''
class ExerciseTreeAdmin(admin.ModelAdmin):
list_display = ('tree_id', 'name_colored', 'active')
search_fields = ['name']
@ -158,8 +173,10 @@ class TranslationPlanTemplateInline(admin.TabularInline):
class TranslationPlanTemplateDetailInline(admin.TabularInline):
model = ExercisePlanTemplateDetail
verbose_name = 'name'
fields = ('exercise_type',)
extra = 0
ordering = ('exercise_type',)
class ExercisePlanTemplateAdmin(admin.ModelAdmin):
@ -268,7 +285,7 @@ class ExerciseDeviceAdmin(admin.ModelAdmin):
admin.site.register(ExerciseType, ExerciseTypeAdmin)
admin.site.register(ExerciseTree, ExerciseTreeAdmin)
admin.site.register(ExercisePlanTemplate, ExercisePlanTemplateAdmin)
admin.site.register(ExercisePlan, ExercisePlanAdmin)
#admin.site.register(ExercisePlan, ExercisePlanAdmin)
admin.site.register(Product, ProductAdmin)
admin.site.register(ExerciseDevice, ExerciseDeviceAdmin)
admin.autodiscover()

View File

@ -1,6 +1,7 @@
from django.db import models
from django.utils.safestring import mark_safe
from django.utils.translation import ugettext_lazy as _
#from treenode.models import TreeNodeModel
class LanguageTypes(models.TextChoices):
@ -26,6 +27,7 @@ class ExerciseDevice(models.Model):
db_table = 'exercise_device'
verbose_name = _("Exercise Device")
verbose_name_plural = _("Exercise Devices")
ordering = ['name']
def image_tag(self):
return mark_safe('<img src="/media/%s" width="30%" height="30%" />' % self.image_url)
@ -82,6 +84,7 @@ class ExerciseTree(models.Model):
db_table = 'exercise_tree'
verbose_name = _("Exercise Tree")
verbose_name_plural = _("Exercise Tree Items")
ordering = ['name']
def __str__(self):
return self.name
@ -103,16 +106,17 @@ class ExerciseTreeTranslation(models.Model):
class ExerciseTreeParents(models.Model):
#treenode_display_field = 'name'
exercise_tree_parents_id = models.AutoField(primary_key=True)
exercise_tree_parent = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE,
related_name=_('exercise_tree_parent'), help_text=_('Parent menu'), blank=True)
exercise_tree_child = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE,
related_name=_('exercise_tree_child'), help_text=_('Actual menu'))
related_name=_('exercise_tree_parent'),
help_text=_('Parent menu'), blank=True)
exercise_tree_child = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE)
class Meta:
db_table = 'exercise_tree_parents'
verbose_name = _("Exercise Tree Parent")
verbose_name_plural = _("Exercise Tree Parents")
verbose_name = _("Menu Tree Representation")
verbose_name_plural = _("Menu Tree Representation")
unique_together = [['exercise_tree_parent', 'exercise_tree_child']]
@ -149,6 +153,7 @@ class ExerciseType(models.Model):
db_table = 'exercise_type'
verbose_name = _("Exercise")
verbose_name_plural = _("Exercises")
ordering = ['name']
def __str__(self):
return self.name

View File

@ -1,4 +1,4 @@
django==3.1.5
django==3.1.7
asgiref==3.2.10
certifi==2020.6.20
chardet==3.0.4