Skip to content

models

django_spire.ai.context.models

Organization

Bases: HistoryModelMixin

name = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

legal_name = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

description = models.TextField(blank=True, null=True) class-attribute instance-attribute

sector = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

sub_sector = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

website = models.URLField(max_length=255, blank=True, null=True) class-attribute instance-attribute

street_address = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

unit_number = models.CharField(max_length=32, blank=True, null=True) class-attribute instance-attribute

city = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

province = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

postal_code = models.CharField(max_length=16, blank=True, null=True) class-attribute instance-attribute

country = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

phone = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

email = models.EmailField(max_length=255, blank=True, null=True) class-attribute instance-attribute

objects = querysets.OrganizationQuerySet.as_manager() class-attribute instance-attribute

Meta

db_table = 'django_spire_ai_context_organization' class-attribute instance-attribute
verbose_name = 'Organization Context' class-attribute instance-attribute
verbose_name_plural = 'Organization Context' class-attribute instance-attribute

save

Source code in django_spire/ai/context/models.py
def save(self, *args, **kwargs) -> None:
    if self.pk is None:
        if self.__class__.objects.exists():
            message = 'Only one AI Organization Context is allowed'
            raise ValidationError(message)

    return super().save(*args, **kwargs)

Person

Bases: HistoryModelMixin

is_internal_to_organization = models.BooleanField(default=True) class-attribute instance-attribute

user = models.ForeignKey(AuthUser, blank=True, null=True, on_delete=(models.SET_NULL), related_name='ai_context_people', related_query_name='ai_context_person') class-attribute instance-attribute

role = models.CharField(max_length=16, choices=PersonRoleChoices, default=(PersonRoleChoices.ADMIN)) class-attribute instance-attribute

role_details = models.TextField(blank=True, null=True) class-attribute instance-attribute

first_name = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

last_name = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

phone = models.CharField(max_length=255, blank=True, null=True) class-attribute instance-attribute

email = models.EmailField(max_length=255, blank=True, null=True) class-attribute instance-attribute

objects = querysets.PeopleQuerySet.as_manager() class-attribute instance-attribute

Meta

db_table = 'django_spire_ai_context_person' class-attribute instance-attribute
verbose_name = 'Person Context' class-attribute instance-attribute
verbose_name_plural = 'People Context' class-attribute instance-attribute