From dfc17e5fe92c199d2a4a763c05124e55211abdb5 Mon Sep 17 00:00:00 2001 From: Bossanyi Tibor Date: Wed, 12 May 2021 08:14:53 +0200 Subject: [PATCH] BO 1.15+3 TrainingPlanTranslation --- .../admin/training_plan.py | 14 ++++++++++++-- .../models/training_plan.py | 18 ++++++++++++++++++ 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/aitrainer_backoffice/aitrainer_backoffice/admin/training_plan.py b/aitrainer_backoffice/aitrainer_backoffice/admin/training_plan.py index fc5412a..62db392 100644 --- a/aitrainer_backoffice/aitrainer_backoffice/admin/training_plan.py +++ b/aitrainer_backoffice/aitrainer_backoffice/admin/training_plan.py @@ -2,12 +2,22 @@ from django.contrib import admin from django.utils.html import format_html from django.utils.translation import ugettext_lazy as _ -from ..models.training_plan import TrainingPlan, TrainingPlanDetail +from ..models.training_plan import TrainingPlan, TrainingPlanDetail, TrainingPlanTranslation + + +class TranslationTrainingPlanInline(admin.TabularInline): + model = TrainingPlanTranslation + fields = ('language_code', 'name_translation', 'description_translation') + extra = 0 class TrainingPlanAdmin(admin.ModelAdmin): list_display = ('name',) - fields = ('name',) + fields = ('name','description') + + inlines = [ + TranslationTrainingPlanInline + ] class TrainingPlanDetailAdmin(admin.ModelAdmin): diff --git a/aitrainer_backoffice/aitrainer_backoffice/models/training_plan.py b/aitrainer_backoffice/aitrainer_backoffice/models/training_plan.py index 9bd2a59..d837676 100644 --- a/aitrainer_backoffice/aitrainer_backoffice/models/training_plan.py +++ b/aitrainer_backoffice/aitrainer_backoffice/models/training_plan.py @@ -1,6 +1,8 @@ +from ckeditor.fields import RichTextField from django.db import models from django.utils.translation import ugettext_lazy as _ +from .enums import LanguageTypes from ..models import ExerciseType @@ -8,6 +10,7 @@ class TrainingPlan(models.Model): training_plan_id = models.AutoField(primary_key=True) name = models.CharField(max_length=100, help_text='The name of the training plan', verbose_name=_("name")) + description = RichTextField(blank=True, null=True) class Meta: db_table = 'training_plan' @@ -35,3 +38,18 @@ class TrainingPlanDetail(models.Model): verbose_name = _("Training Plan Detail") verbose_name_plural = _("Training Plan Details") + +class TrainingPlanTranslation(models.Model): + translation_id = models.AutoField(primary_key=True) + training_plan = models.ForeignKey(TrainingPlan, on_delete=models.CASCADE) + language_code = models.CharField(max_length=2, choices=LanguageTypes.choices, default=LanguageTypes.HU) + name_translation = models.CharField(max_length=50) + description_translation = RichTextField(blank=True, null=True) + + class Meta: + db_table = 'training_plan_translation' + verbose_name = _("Translation") + verbose_name_plural = _("Translations") + + def __str__(self): + return self.name_translation