Advertisement
mattia89

Home.models

Feb 18th, 2025
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.01 KB | None | 0 0
  1. from django.db import models
  2. from users.models import Agent, Customer
  3.  
  4. # Create your models here.
  5.  
  6.  
  7. class Property(models.Model):
  8.     id = models.BigAutoField(primary_key=True, null=False)
  9.     agent = models.ForeignKey(
  10.         Agent, on_delete=models.CASCADE, verbose_name="Agente", blank=True
  11.     )
  12.     region = models.CharField(max_length=99, verbose_name="Regione", null=False)
  13.     province = models.CharField(max_length=99, verbose_name="Provincia", null=False)
  14.     city = models.CharField(max_length=99, verbose_name="Città", null=False)
  15.     zip_code = models.IntegerField(verbose_name="C.A.P.", null=False)
  16.     address1 = models.CharField(max_length=99, verbose_name="Indirizzo", null=False)
  17.     address2 = models.CharField(max_length=99, verbose_name="Scala, Piano", blank=True)
  18.     property_type = models.CharField(
  19.         max_length=20,
  20.         verbose_name="Tipologia",
  21.         choices=[
  22.             ("HOUSE", "Casa"),
  23.             ("APARTMENT", "Appartamento"),
  24.             ("LAND", "Terreno"),
  25.             ("FARM", "Masseria"),
  26.         ],
  27.     )
  28.     price = models.DecimalField(
  29.         decimal_places=2, max_digits=19, verbose_name="Prezzo di Vendita", null=False
  30.     )
  31.     construction_year = models.IntegerField(
  32.         verbose_name="Anno di costruzione", null=True, blank=True
  33.     )
  34.     total_plans = models.IntegerField(verbose_name="Piani Totali", null=True)
  35.     mq = models.DecimalField(
  36.         decimal_places=2, max_digits=99, verbose_name="mq totali", null=True, default=0
  37.     )
  38.     locals_number = models.DecimalField(
  39.         decimal_places=2, max_digits=99, verbose_name="Locali", null=True
  40.     )
  41.     bedrooms_number = models.IntegerField(verbose_name="Camere da letto", null=True)
  42.     bathrooms_number = models.DecimalField(
  43.         decimal_places=2, max_digits=99, verbose_name="Bagni", null=True
  44.     )
  45.     garden = models.BooleanField(default=False, verbose_name="Giardino", null=False)
  46.     garden_mq = models.DecimalField(
  47.         decimal_places=2,
  48.         max_digits=99,
  49.         verbose_name="mq giardino",
  50.         null=True,
  51.         blank=True,
  52.         default=0,
  53.     )
  54.     box = models.BooleanField(default=False, verbose_name="Garage", null=False)
  55.     box_mq = models.DecimalField(
  56.         decimal_places=2, max_digits=99, verbose_name="mq garage", null=True, default=0
  57.     )
  58.     title = models.CharField(
  59.         max_length=99, blank=False, verbose_name="Titolo", null=False
  60.     )
  61.     description = models.TextField(max_length=99, verbose_name="Descrizione")
  62.     cover = models.ImageField(
  63.         upload_to="cover/upload", verbose_name="Copertina", blank=True
  64.     )
  65.     images = models.ImageField(
  66.         upload_to="gallery/upload", verbose_name="Galleria", blank=True
  67.     )
  68.     created_at = models.DateField(auto_now_add=True)
  69.     favourites = models.ManyToManyField(Customer, default=None, blank=True, verbose_name="Preferito")
  70.  
  71.     class Meta:
  72.         verbose_name = "Immobile"
  73.         verbose_name_plural = "Immobili"
  74.  
  75.     def __str__(self):
  76.         return self.title
  77.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement