--- /dev/null
+from django.db import models
+from django.contrib.auth.models import User
+from django.utils import timezone
+
+
+class Localita(models.Model):
+ descrizione = models.CharField(max_length=255, null=False)
+ provincia = models.CharField(max_length=5, null=True, blank=True)
+ cap = models.CharField(max_length=5, null=True, blank=True)
+ regione = models.CharField(max_length=5, null=True, blank=True)
+ is_active = models.BooleanField(default=True)
+
+
+class Gestisce(models.Model):
+ utente = models.ForeignKey(User, on_delete=models.DO_NOTHING)
+ localita = models.ForeignKey(Localita, on_delete=models.DO_NOTHING)
+ data_inizio = models.DateTimeField(auto_now_add=False, default=timezone.now, null=True, blank=True)
+ data_fine = models.DateTimeField(null=True, blank=True)
+
+
+class Percorso(models.Model):
+ nome = models.CharField(max_length=255, null=False)
+ descrizione = models.CharField(max_length=255, null=False)
+ testo = models.TextField(max_length=255, null=False)
+
+
+class PointOfInterest(models.Model):
+ nome = models.CharField(max_length=255, null=False)
+ lat = models.FloatField()
+ long = models.FloatField()
+
+
+class Tappa(models.Model):
+ percorso = models.ForeignKey(Percorso, on_delete=models.DO_NOTHING)
+ poi = models.ForeignKey(PointOfInterest, on_delete=models.DO_NOTHING)
+ ordine = models.IntegerField()
+
+
+class TipologiaMultimedia(models.Model):
+ nome = models.CharField(max_length=255, null=False)
+
+
+class Multimedia(models.Model):
+ tipologia = models.ForeignKey(TipologiaMultimedia, on_delete=models.DO_NOTHING)
+ path = models.CharField(max_length=255, null=False)
+ nome = models.CharField(max_length=255, null=False)
+ descrizione = models.CharField(max_length=255, null=False)
+ testo = models.TextField(max_length=255, null=False)
+
+
+class Feedback(models.Model):
+ utente = models.ForeignKey(User, on_delete=models.DO_NOTHING)
+ percorso = models.ForeignKey(Percorso, on_delete=models.DO_NOTHING)
+ valutazione = models.IntegerField()