diff --git a/aitrainer_backoffice/aitrainer_backoffice/admin.py b/aitrainer_backoffice/aitrainer_backoffice/admin.py
index e84e036..2cc60c3 100644
--- a/aitrainer_backoffice/aitrainer_backoffice/admin.py
+++ b/aitrainer_backoffice/aitrainer_backoffice/admin.py
@@ -80,7 +80,7 @@ class ExerciseTreeAdmin(admin.ModelAdmin):
def get_image_preview(self, obj):
image_url = '/media/' + str(obj.image_url)
if obj.pk:
- return format_html('
' \
+ return format_html('
'
.format(url=image_url))
get_image_preview.short_description = _("Image Preview")
@@ -132,7 +132,6 @@ class ExercisePlanDetailAdmin(admin.ModelAdmin):
list_editable = ('serie', 'repeat', 'weight_equation',)
#list_editable_link('',)
-
def get_plan(self, obj):
return obj.exercise_plan.name
@@ -179,7 +178,17 @@ class TranslationExerciseDeviceInline(admin.TabularInline):
class ExerciseDeviceAdmin(admin.ModelAdmin):
- list_display = ('device_id', 'name')
+ list_display = ('exercise_device_id', 'name')
+ fields = ('name', 'description', "image_url", "get_image_preview")
+ readonly_fields = ("get_image_preview",)
+
+ def get_image_preview(self, obj):
+ image_url = '/media/' + str(obj.image_url)
+ if obj.pk:
+ return format_html('
' \
+ .format(url=image_url))
+
+ get_image_preview.short_description = _("Image Preview")
inlines = [
TranslationExerciseDeviceInline
diff --git a/aitrainer_backoffice/aitrainer_backoffice/models.py b/aitrainer_backoffice/aitrainer_backoffice/models.py
index f9bed25..37cd776 100644
--- a/aitrainer_backoffice/aitrainer_backoffice/models.py
+++ b/aitrainer_backoffice/aitrainer_backoffice/models.py
@@ -1,4 +1,5 @@
from django.db import models
+from django.utils.safestring import mark_safe
from django.utils.translation import ugettext_lazy as _
@@ -8,17 +9,23 @@ class LanguageTypes(models.TextChoices):
class ExerciseDevice(models.Model):
- device_id = models.AutoField(primary_key=True)
+ exercise_device_id = models.AutoField(primary_key=True)
name = models.CharField(max_length=100)
- description = models.CharField(max_length=200, blank=True, null=True)
+ image_url = models.ImageField(upload_to='images/', help_text='The image size is 1366x768')
+ description = models.TextField(max_length=1000, blank=True, null=True, help_text="English description here")
class Meta:
db_table = 'exercise_device'
verbose_name = _("Exercise Device")
verbose_name_plural = _("Exercise Devices")
+ def image_tag(self):
+ return mark_safe('
' % self.image_url)
+
+ image_tag.short_description = 'Image'
+
def __str__(self):
- return self.name
+ return self.name
class ExerciseTree(models.Model):
@@ -244,7 +251,7 @@ class ExerciseTypeDevice(models.Model):
class ExerciseDeviceTranslation(models.Model):
translation_id = models.AutoField(primary_key=True)
- device = models.ForeignKey(ExerciseDevice, on_delete=models.CASCADE)
+ exercise_device = models.ForeignKey(ExerciseDevice, on_delete=models.CASCADE)
name = models.CharField(max_length=100)
language_code = models.CharField(max_length=2, choices=LanguageTypes.choices, default=LanguageTypes.HU)
@@ -254,4 +261,4 @@ class ExerciseDeviceTranslation(models.Model):
verbose_name_plural = _("Translations")
def __str__(self):
- return self.name
\ No newline at end of file
+ return self.name
diff --git a/aitrainer_backoffice/aitrainer_backoffice/settings/__init__.py b/aitrainer_backoffice/aitrainer_backoffice/settings/__init__.py
index 8e28e9d..be7ce5e 100644
--- a/aitrainer_backoffice/aitrainer_backoffice/settings/__init__.py
+++ b/aitrainer_backoffice/aitrainer_backoffice/settings/__init__.py
@@ -1,2 +1 @@
from .prod import *
-from .dev import *