Work on Svelte integration

This commit is contained in:
Scott Idem
2021-07-13 18:19:36 -04:00
parent e4d60309a0
commit 6f8e18750c
8 changed files with 203 additions and 13 deletions

View File

@@ -42,6 +42,13 @@ class Membership_Cfg_Base(BaseModel):
# extended_membership_person_profile: Optional[str] # list of dicts outlining extended (custom) membership profile fields for client
# extended_membership_person_profile: Optional[Json] = '[]' # list of dicts outlining extended (custom) membership profile fields for client
# extended_membership_person_profile: Optional[Json] # list of dicts outlining extended (custom) membership profile fields for client
extended_membership_person_profile: Optional[str] # list of dicts outlining extended (custom) membership profile fields for client
extended_membership_person_profile: Optional[Json] = Field(
alias = 'extended_profile'
) # list of dicts outlining extended (custom) membership profile fields for client
class Config:
underscore_attrs_are_private = True
allow_population_by_field_name = True
fields = base_fields
Membership_Cfg_Base.update_forward_refs()

View File

@@ -9,11 +9,12 @@ from app.lib_general import log, logging
from app.models.common_field_schema import base_fields, default_num_bytes
from app.models.contact_models import Contact_Base
from app.models.membership_cfg_models import Membership_Cfg_Base
from app.models.organization_models import Organization_Base
class Membership_Person_Profile_Base(BaseModel):
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
id_random: Optional[str] = Field(
@@ -25,6 +26,9 @@ class Membership_Person_Profile_Base(BaseModel):
alias = 'membership_person_profile_id'
)
account_id_random: Optional[str]
account_id: Optional[int]
contact_id_random: Optional[str]
contact_id: Optional[int]
@@ -46,8 +50,14 @@ class Membership_Person_Profile_Base(BaseModel):
created_on: Optional[datetime.datetime] = None
updated_on: Optional[datetime.datetime] = None
# Including JSON data
extended_json: Optional[Json]
# Including other related objects
contact: Optional[Contact_Base]
membership_cfg: Optional[Membership_Cfg_Base] = Field(
alias = 'cfg',
)
organization: Optional[Organization_Base]
_processed_at: datetime.datetime = PrivateAttr(default_factory=datetime.datetime.now)
@@ -71,6 +81,15 @@ class Membership_Person_Profile_Base(BaseModel):
return redis_lookup_id_random(record_id_random=values['id_random'], table_name='membership_person_profile')
return None
@validator('account_id', always=True)
def account_id_lookup(cls, v, values, **kwargs):
log.setLevel(logging.WARNING)
log.debug(locals())
if values['account_id_random']:
return redis_lookup_id_random(record_id_random=values['account_id_random'], table_name='account')
return None
@validator('contact_id', always=True)
def contact_id_lookup(cls, v, values, **kwargs):
log.setLevel(logging.WARNING)
@@ -91,4 +110,14 @@ class Membership_Person_Profile_Base(BaseModel):
class Config:
underscore_attrs_are_private = True
allow_population_by_field_name = True
fields = base_fields
class Membership_Person_Profile_Base_Up(Membership_Person_Profile_Base):
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
# Including JSON data
extended_json: Optional[str]