I have 2 Pydantic classes
class AuthenticatedCreateBasketV2ApiModel(PublicCreateBasketV2ApiModel):
agency: str = Field()
owner: Optional[UserUuid] = Field()
effective_date: Date
class PublicCreateBasketV2ApiModel(BaseModel):
agency: str
changes: conlist(ChangeApiModel, min_items=1)
effective_date: Date
email: Optional[EmailStr] = None
class Config:
extra = "forbid"
and I am trying to validate like so AuthenticatedCreateBasketV2ApiModel(effective_date=effective_date, changes=[change])
with my validator
@validator("changes")
def validate_changes_for_lapse_or_renewal_or_cancellation(
cls, changes: List
) -> List[Change]:
lapse_changes, renewal_changes, cancellation_changes = [], [], []
for change in changes:
if change.type == ChangeType.LAPSE:
lapse_changes.append(change)
elif change.type == ChangeType.RENEW:
renewal_changes.append(change)
elif change.type == ChangeType.CANCEL:
cancellation_changes.append(change)
validate_lapses(lapse_changes)
validate_renewals(renewal_changes)
validate_cancellations(cancellation_changes)
return changes
The problem is that I can't seem to access effective_date
in my validator. I have tried using the code examples here to no avail. Any advice would be appreciated