aboutsummaryrefslogblamecommitdiffstats
path: root/ctrack/organisations/models.py
blob: cf8e7de7e7965d9037404e73f4ed096be1014d14 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11






                               



                                                
                            
                                                                              









                                                    

                                                        
                                                                                         





                                                                                    
from django.db import models

# Create your models here.
from django.urls import reverse
from slugify import slugify


class AddressType(models.Model):
    descriptor = models.CharField(max_length=50)


class Address(models.Model):
    type = models.ForeignKey(AddressType, on_delete=models.CASCADE, default=1)
    line1 = models.CharField(max_length=255)
    line2 = models.CharField(max_length=255)
    line3 = models.CharField(max_length=255)
    city = models.CharField(max_length=100)
    county = models.CharField(max_length=100)
    postcode = models.CharField(max_length=10)
    country = models.CharField(max_length=100)
    other_details = models.CharField(max_length=255)


class Organisation(models.Model):
    name = models.CharField(max_length=255, blank=False)
    address = models.ForeignKey(Address, on_delete=models.CASCADE, blank=True, null=True)

    def get_absolute_url(self):
        return reverse("organisations:detail", kwargs={"name": self.slugify_name()})

    def slugify_name(self):
        return slugify(self.name)