diff --git a/back/tmc/admin.py b/back/tmc/admin.py index 15c7c8d..c0b89fb 100644 --- a/back/tmc/admin.py +++ b/back/tmc/admin.py @@ -1,6 +1,8 @@ from django.contrib import admin -from .models import CustomTable, BaseCustomField +from .models import CustomTable, BaseCustomField, Image, Element3D, ClickableArea admin.site.register(CustomTable) admin.site.register(BaseCustomField) - +admin.site.register(Image) +admin.site.register(Element3D) +admin.site.register(ClickableArea) \ No newline at end of file diff --git a/back/tmc/models.py b/back/tmc/models.py index 8bd6de5..e210c68 100644 --- a/back/tmc/models.py +++ b/back/tmc/models.py @@ -3,6 +3,9 @@ from django.db import models class BaseCustomField(models.Model): name = models.CharField(max_length=120, ) + text = models.TextField() + Image = models.ImageField(upload_to='images/') + def __str__(self): return self.name @@ -12,4 +15,31 @@ class CustomTable(models.Model): fields = models.ManyToManyField(BaseCustomField) def __str__(self): - return self.name \ No newline at end of file + return self.name + + +class Image(models.Model): + file = models.ImageField(upload_to='images/') + alt = models.CharField(max_length=255) + title = models.CharField(max_length=255) + + def __str__(self): + return self.title + + +class Element3D(models.Model): + model_file = models.FileField(upload_to='models/') + name = models.CharField(max_length=255) + description = models.TextField() + + def __str__(self): + return self.name + +class ClickableArea(models.Model): + name = models.CharField(max_length=255) + description = models.TextField() + object_name = models.CharField(max_length=255) + target = models.ForeignKey(Element3D, on_delete=models.CASCADE, related_name='clickable_areas') + + def __str__(self): + return self.name