logo
logo-hover
Menu

Description

The "thx-organization" package provides a series of models for managing information about organizations. These models allow recording detailed information about organizations, including addresses, contacts, types, and other relevant information.

Documentation

The package provides a robust infrastructure for managing information about organizations and contacts within a Django application. These models are designed to be extensible and adaptable to the specific needs of the project, allowing for organized and intuitive management of information.

Regarding organizations, the main model, Organization, represents an organization and includes fields for name, type, legal form, and other relevant information. This model can be extended through subclasses such as OwnerOrganization, which provides additional functionalities for owning organizations.

Other models included in the package handle information such as organization addresses, email and phone types, organization types, and legal forms. Additionally, there are models to manage details of emails and phone numbers associated with an organization, as well as related social media pages.

Moving on to contacts, the package offers a comprehensive set of tools for managing detailed contact information within the application. These tools simplify the recording and management of contact details, allowing for tracking of roles, titles, contact information, and more.

The Contact model represents the core of contact details, allowing for recording fundamental information such as name, role, and title. The package's flexibility allows for defining owner contacts through the OwnerContact model.

The ContactRole and ContactTitle models allow categorizing contacts based on their role and title, facilitating organization and selection of contacts based on their responsibilities and positions within the organization.

Regarding contact information, the ContactEmail, ContactPhone, and ContactSocialAccount models allow for recording email addresses, phone numbers, and social media accounts associated with contacts. Each type of contact information can be marked as primary, facilitating identification of the primary communication method for each contact.

Model structure

  • Organization: Represents an organization and includes fields such as name, type, legal form, and other relevant information.
     
  • OwnerOrganization: Subclass of Organization that manages owning organizations, offering additional functionalities through the OwnerOrganizationManager.
  •  
  • OrganizationAddress: Represents an address associated with an organization and includes information such as organization name, additional notes, and geographical coordinates.
  •  
  • EmailTypology and PhoneTypology: Represent email and phone typologies used by organizations respectively. They provide codes, names, and slugs to identify different typologies.
  •  
  • OrganizationType and OrganizationForm: Represent the type and legal form of an organization respectively. They include fields such as code, name, description, and other relevant information.
  •  
  • OrganizationEmail and OrganizationPhone: Represent email addresses and phone numbers associated with an organization respectively. They include fields such as organization, typology, and specific data like email or phone number.
  •  
  • OrganizationSocialPage: Represents a social media page associated with an organization and includes information such as the type of social network and link to the page.
  •  
  • Contact: Represents a contact associated with an organization and includes information such as name, surname, role, and other relevant information.
  •  
  • OwnerContact: Subclass of Contact that manages owning contacts, offering additional functionalities through the OwnerContactManager.
  •  
  • ContactRole and ContactTitle: Represent roles and titles associated with contacts respectively.
  •  
  • ContactEmail and ContactPhone: Represent email addresses and phone numbers associated with a contact respectively.
  •  
  • ContactSocialAccount: Represents social media accounts associated with a contact.

 

Each model provides specific functionalities and can be used as a base to define custom models within a Django application.

Authors and contributors