""" This module defines the structure and properties of documents. """ from django.db import models from closuretree.models import ClosureModel from jci.models import Standard class Audience(ClosureModel): name = models.CharField(max_length=50) parent = models.ForeignKey('self', related_name='children', null=True, blank=True) def __str__(self): return self.name class Structure(ClosureModel): name = models.CharField(max_length=50) parent = models.ForeignKey('self', related_name='children', null=True, blank=True) def __str__(self): return self.name class Document(models.Model): audience = models.ManyToManyField(Audience) standards = models.ManyToManyField(Standard) structure = models.ManyToManyField(Structure) def __str__(self): return '{} {}'.format(self.audience, self.structure)