Partners
A module that returns the partners available in GSO.
PartnerSchema
Bases: BaseModel
Partner schema.
Source code in gso/services/partners.py
ModifiedPartnerSchema
Bases: PartnerSchema
Partner schema when making a modification.
The name and email can be empty in this case, if they don't need changing.
Source code in gso/services/partners.py
PartnerNotFoundError
validate_partner_name_unique(name)
Validate that the name of a partner is unique.
Source code in gso/services/partners.py
validate_partner_email_unique(email)
Validate that the e-mail address of a partner is unique.
Source code in gso/services/partners.py
get_all_partners()
get_partner_by_name(name)
Try to get a partner by their name.
get_partner_by_id(partner_id)
Try to get a partner by their id.
filter_partners_by_attribute(attribute, value, *, case_sensitive=True)
Filter the list of partners by a specified attribute.
Source code in gso/services/partners.py
filter_partners_by_name(name, *, case_sensitive=True)
Filter the list of partners by name.
filter_partners_by_email(email, *, case_sensitive=True)
Filter the list of partners by email.
create_partner(partner_data)
Create a new partner and add it to the database using Pydantic schema for validation.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
partner_data
|
PartnerSchema
|
Partner data validated by Pydantic schema. |
required |
Returns:
Type | Description |
---|---|
dict
|
JSON representation of the created partner. |
Source code in gso/services/partners.py
edit_partner(partner_data)
Edit an existing partner and update it in the database.
Source code in gso/services/partners.py
delete_partner(partner_id)
Delete an existing partner from the database.