BO 1.24 sport + active exercises in exercise programs
This commit is contained in:
parent
7919da3e42
commit
a9d34f65b8
@ -13,3 +13,4 @@ from .faq import FaqAdmin
|
||||
from .split_tests import SplitTestAdmin
|
||||
from .training_plan_day import TrainingPlanDayAdmin
|
||||
from .controlling import ControllingAdmin
|
||||
from .sport import SportAdmin
|
||||
|
22
aitrainer_backoffice/aitrainer_backoffice/admin/sport.py
Normal file
22
aitrainer_backoffice/aitrainer_backoffice/admin/sport.py
Normal file
@ -0,0 +1,22 @@
|
||||
from django.contrib import admin
|
||||
|
||||
from ..models.sports import Sport, SportTranslation
|
||||
|
||||
|
||||
class SportTranslationInline(admin.TabularInline):
|
||||
model = SportTranslation
|
||||
fields = ('language_code', 'sport_name')
|
||||
extra = 0
|
||||
|
||||
|
||||
class SportAdmin(admin.ModelAdmin):
|
||||
list_display = ('name',)
|
||||
fields = ('name',)
|
||||
|
||||
inlines = [
|
||||
SportTranslationInline,
|
||||
]
|
||||
|
||||
|
||||
admin.site.register(Sport, SportAdmin)
|
||||
admin.autodiscover()
|
@ -15,4 +15,5 @@ from .training_plan import TrainingPlan, TrainingPlanDetail
|
||||
from .faq import Faq, FaqTranslation
|
||||
from .split_tests import SplitTests
|
||||
from .training_plan_day import TrainingPlanDay, TrainingPlanDayTranslation
|
||||
from .controlling import Controlling
|
||||
from .controlling import Controlling
|
||||
from .sports import Sport, SportTranslation
|
@ -7,7 +7,8 @@ from .exercise_type import ExerciseType
|
||||
class Evaluation(models.Model):
|
||||
evaluation_id = models.AutoField(primary_key=True)
|
||||
name = models.CharField(max_length=100, help_text='The name should be in English here')
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE, verbose_name=_("exercise_type"))
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE, verbose_name=_("exercise_type"),
|
||||
limit_choices_to={'active': True})
|
||||
unit = models.CharField(max_length=50, verbose_name=_("unit"))
|
||||
|
||||
class Meta:
|
||||
|
@ -39,7 +39,7 @@ class ExercisePlanTranslation(models.Model):
|
||||
class ExercisePlanDetail(models.Model):
|
||||
exercise_plan_detail_id = models.AutoField(primary_key=True)
|
||||
exercise_plan = models.ForeignKey(ExercisePlan, on_delete=models.CASCADE)
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE)
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE, limit_choices_to={'active':True})
|
||||
serie = models.IntegerField()
|
||||
repeats = models.IntegerField()
|
||||
weight_equation = models.CharField(max_length=100)
|
||||
|
32
aitrainer_backoffice/aitrainer_backoffice/models/sports.py
Normal file
32
aitrainer_backoffice/aitrainer_backoffice/models/sports.py
Normal file
@ -0,0 +1,32 @@
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from ckeditor.fields import RichTextField
|
||||
|
||||
from .enums import LanguageTypes
|
||||
|
||||
|
||||
class Sport(models.Model):
|
||||
sport_id = models.AutoField(primary_key=True)
|
||||
name = models.CharField(max_length=200, help_text='Unique name',
|
||||
verbose_name=_("name"))
|
||||
|
||||
class Meta:
|
||||
db_table = 'sport'
|
||||
verbose_name = _("Sport")
|
||||
verbose_name_plural = _("Sports")
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
|
||||
class SportTranslation(models.Model):
|
||||
translation_id = models.AutoField(primary_key=True)
|
||||
sport = models.ForeignKey(Sport, on_delete=models.CASCADE)
|
||||
language_code = models.CharField(max_length=2, choices=LanguageTypes.choices, default=LanguageTypes.HU)
|
||||
sport_name = models.CharField(max_length=200, help_text='Unique description name',
|
||||
verbose_name=_("name"))
|
||||
|
||||
class Meta:
|
||||
db_table = 'sport_translation'
|
||||
verbose_name = _("Translation")
|
||||
verbose_name_plural = _("Translations")
|
@ -9,7 +9,7 @@ from ..models.training_plan_day import TrainingPlanDay
|
||||
|
||||
class TrainingPlan(models.Model):
|
||||
training_plan_id = models.AutoField(primary_key=True)
|
||||
tree = models.ForeignKey(ExerciseTree,on_delete=models.CASCADE)
|
||||
tree = models.ForeignKey(ExerciseTree,on_delete=models.CASCADE, limit_choices_to={'active':True})
|
||||
name = models.CharField(max_length=100, help_text='The name of the training plan',
|
||||
verbose_name=_("name"))
|
||||
description = RichTextField(blank=True, null=True)
|
||||
@ -30,7 +30,7 @@ class TrainingPlan(models.Model):
|
||||
class TrainingPlanDetail(models.Model):
|
||||
training_plan_detail_id = models.AutoField(primary_key=True)
|
||||
training_plan = models.ForeignKey(TrainingPlan, on_delete=models.CASCADE)
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE)
|
||||
exercise_type = models.ForeignKey(ExerciseType, on_delete=models.CASCADE, limit_choices_to={'active': True})
|
||||
sort = models.IntegerField()
|
||||
set = models.IntegerField()
|
||||
repeats = models.IntegerField(blank=True)
|
||||
|
Loading…
Reference in New Issue
Block a user