Skip to content

Unique field

An input field that must be unique in the database.

validate_field_is_unique(subscription_id, value, info)

Validate that a field is unique.

Source code in gso/utils/types/unique_field.py
def validate_field_is_unique(subscription_id: UUIDstr, value: T, info: ValidationInfo) -> T:
    """Validate that a field is unique."""
    matched_subscriptions = subscriptions.get_active_subscriptions_by_field_and_value(str(info.field_name), str(value))
    matched_subscriptions = list(
        filter(lambda match: str(match.subscription_id) != subscription_id, matched_subscriptions)
    )
    if len(matched_subscriptions) > 0:
        msg = f"{info.field_name} must be unique"
        raise ValueError(msg)
    return value