from django.db import models class CustomField(models.Model): FIELD_TYPES = ( ('char', 'CharField'), ('int', 'IntegerField'), ('text', 'TextField'), ('bool', 'BooleanField'), ('date', 'DateField'), ) name = models.CharField(max_length=100) field_type = models.CharField(max_length=10, choices=FIELD_TYPES) required = models.BooleanField(default=False) def __str__(self): return self.name class CustomTable(models.Model): custom_table = models.ForeignKey(CustomField, on_delete = models.CASCADE) name = models.CharField("Наименование", max_length=100) comment = models.TextField("Комментарий",blank=True, null=True) def __str__(self): return self.name