Skip to content

Commit ecfafa2

Browse files
committed
🎨 Field() supports json_schema_extra for Pydantic v2
1 parent d7af50c commit ecfafa2

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

sqlmodel/main.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ def Field(
292292
sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined,
293293
sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined,
294294
schema_extra: Optional[Dict[str, Any]] = None,
295+
json_schema_extra: Optional[Dict[str, Any]] = None,
295296
) -> Any: ...
296297

297298

@@ -338,6 +339,7 @@ def Field(
338339
repr: bool = True,
339340
sa_column: Union[Column, UndefinedType] = Undefined, # type: ignore
340341
schema_extra: Optional[Dict[str, Any]] = None,
342+
json_schema_extra: Optional[Dict[str, Any]] = None,
341343
) -> Any: ...
342344

343345

@@ -382,8 +384,12 @@ def Field(
382384
sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined,
383385
sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined,
384386
schema_extra: Optional[Dict[str, Any]] = None,
387+
json_schema_extra: Optional[Dict[str, Any]] = None,
385388
) -> Any:
386-
current_schema_extra = schema_extra or {}
389+
if json_schema_extra:
390+
current_schema_extra = {"json_schema_extra": json_schema_extra}
391+
else:
392+
current_schema_extra = schema_extra or {}
387393
field_info = FieldInfo(
388394
default,
389395
default_factory=default_factory,

0 commit comments

Comments
 (0)