diff --git a/app/models/post_comment_models.py b/app/models/post_comment_models.py index 387444c..88b7b24 100644 --- a/app/models/post_comment_models.py +++ b/app/models/post_comment_models.py @@ -28,6 +28,9 @@ class Post_Comment_Base(BaseModel): post_id_random: Optional[str] post_id: Optional[int] + person_id_random: Optional[str] + person_id: Optional[int] + user_id_random: Optional[str] user_id: Optional[int] @@ -76,17 +79,25 @@ class Post_Comment_Base(BaseModel): return redis_lookup_id_random(record_id_random=values['post_id_random'], table_name='post') return None + @validator('person_id', always=True) + def person_id_lookup(cls, v, values, **kwargs): + log.setLevel(logging.WARNING) + log.debug(locals()) + + if values.get('person_id_random'): + return redis_lookup_id_random(record_id_random=values['person_id_random'], table_name='person') + return None + @validator('user_id', always=True) def user_id_lookup(cls, v, values, **kwargs): log.setLevel(logging.WARNING) log.debug(locals()) - if values['user_id_random']: + if values.get('user_id_random'): return redis_lookup_id_random(record_id_random=values['user_id_random'], table_name='user') return None class Config: underscore_attrs_are_private = True + allow_population_by_field_name = True fields = base_fields - -Post_Comment_Base.update_forward_refs() diff --git a/app/models/post_models.py b/app/models/post_models.py index 0c367b2..a9fc1fe 100644 --- a/app/models/post_models.py +++ b/app/models/post_models.py @@ -27,6 +27,9 @@ class Post_Base(BaseModel): account_id_random: Optional[str] account_id: Optional[int] + person_id_random: Optional[str] + person_id: Optional[int] + user_id_random: Optional[str] user_id: Optional[int] @@ -106,12 +109,21 @@ class Post_Base(BaseModel): return redis_lookup_id_random(record_id_random=values['account_id_random'], table_name='account') return None + @validator('person_id', always=True) + def person_id_lookup(cls, v, values, **kwargs): + log.setLevel(logging.WARNING) + log.debug(locals()) + + if values.get('person_id_random'): + return redis_lookup_id_random(record_id_random=values['person_id_random'], table_name='person') + return None + @validator('user_id', always=True) def user_id_lookup(cls, v, values, **kwargs): log.setLevel(logging.WARNING) log.debug(locals()) - if values['user_id_random']: + if values.get('user_id_random'): return redis_lookup_id_random(record_id_random=values['user_id_random'], table_name='user') return None