1
- from pydantic .types import Optional , List
2
1
from sqlmodel import Field , Relationship , SQLModel
3
2
4
3
from api .public .team .models import Team
8
7
class HeroBase (SQLModel ):
9
8
name : str
10
9
secret_name : str
11
- age : Optional [ int ] = None
10
+ age : int | None = None
12
11
13
12
class Config :
14
- schema_extra = {
13
+ json_schema_extra = {
15
14
"example" : {
16
15
"id" : 1 ,
17
16
"name" : "Super Man" ,
@@ -23,8 +22,8 @@ class Config:
23
22
24
23
25
24
class Hero (HeroBase , table = True ):
26
- id : Optional [ int ] = Field (default = None , primary_key = True )
27
- teams : List [Team ] = Relationship (back_populates = "heroes" , link_model = HeroTeamLink )
25
+ id : int | None = Field (default = None , primary_key = True )
26
+ teams : list [Team ] = Relationship (back_populates = "heroes" , link_model = HeroTeamLink )
28
27
29
28
30
29
class HeroCreate (HeroBase ):
@@ -33,20 +32,20 @@ class HeroCreate(HeroBase):
33
32
34
33
class HeroRead (HeroBase ):
35
34
id : int
36
- name : Optional [ str ] = None
37
- secret_name : Optional [ str ] = None
38
- age : Optional [ int ] = None
39
- teams : List [Team ] = None
35
+ name : str | None = None
36
+ secret_name : str | None = None
37
+ age : int | None = None
38
+ teams : list [Team ] = None
40
39
41
40
42
41
class HeroUpdate (HeroBase ):
43
- name : Optional [ str ] = None
44
- secret_name : Optional [ str ] = None
45
- age : Optional [ int ] = None
46
- teams : List [Team ] = None
42
+ name : str | None = None
43
+ secret_name : str | None = None
44
+ age : int | None = None
45
+ teams : list [Team ] = None
47
46
48
47
class Config :
49
- schema_extra = {
48
+ json_schema_extra = {
50
49
"example" : {
51
50
"name" : "Super Man" ,
52
51
"secret_name" : "Clark Kent" ,
0 commit comments