27 lines
810 B
Python
27 lines
810 B
Python
from django.db import models
|
|
import logging
|
|
|
|
logger = logging.getLogger("root")
|
|
|
|
def group_based_upload_to(instance, filename):
|
|
logger.info(instance)
|
|
return "files/image/{}/{}/{}".format(
|
|
type(instance).__name__.lower(), instance.id, filename
|
|
)
|
|
|
|
class Element3D(models.Model):
|
|
model_file = models.FileField(upload_to=group_based_upload_to)
|
|
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 |