Skip to content

Commit

Permalink
Add compatibility for Pydantic V2 regex (renamed param from regex to …
Browse files Browse the repository at this point in the history
…param)
  • Loading branch information
stickM4N committed Dec 1, 2024
1 parent e86b5fc commit 43f38c8
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion sqlmodel/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -240,6 +240,7 @@ def Field(
max_length: Optional[int] = None,
allow_mutation: bool = True,
regex: Optional[str] = None,
pattern: Optional[str] = None,
discriminator: Optional[str] = None,
repr: bool = True,
primary_key: Union[bool, UndefinedType] = Undefined,
Expand Down Expand Up @@ -285,6 +286,7 @@ def Field(
max_length: Optional[int] = None,
allow_mutation: bool = True,
regex: Optional[str] = None,
pattern: Optional[str] = None,
discriminator: Optional[str] = None,
repr: bool = True,
primary_key: Union[bool, UndefinedType] = Undefined,
Expand Down Expand Up @@ -339,6 +341,7 @@ def Field(
max_length: Optional[int] = None,
allow_mutation: bool = True,
regex: Optional[str] = None,
pattern: Optional[str] = None,
discriminator: Optional[str] = None,
repr: bool = True,
sa_column: Union[Column, UndefinedType] = Undefined, # type: ignore
Expand Down Expand Up @@ -374,6 +377,7 @@ def Field(
max_length: Optional[int] = None,
allow_mutation: bool = True,
regex: Optional[str] = None,
pattern: Optional[str] = None,
discriminator: Optional[str] = None,
repr: bool = True,
primary_key: Union[bool, UndefinedType] = Undefined,
Expand All @@ -389,6 +393,12 @@ def Field(
schema_extra: Optional[Dict[str, Any]] = None,
) -> Any:
current_schema_extra = schema_extra or {}

if IS_PYDANTIC_V2:
current_schema_extra.update(pattern=pattern or regex)
else:
current_schema_extra.update(regex=regex or pattern)

field_info = FieldInfo(
default,
default_factory=default_factory,
Expand All @@ -411,7 +421,6 @@ def Field(
min_length=min_length,
max_length=max_length,
allow_mutation=allow_mutation,
regex=regex,
discriminator=discriminator,
repr=repr,
primary_key=primary_key,
Expand Down

0 comments on commit 43f38c8

Please sign in to comment.