2
2
3
3
from jinja2 import BaseLoader , ChoiceLoader , Environment , PackageLoader
4
4
from jinja2 .ext import Extension
5
- from pydantic import BaseSettings , Field , IPvAnyAddress , root_validator
6
- from pydantic .color import Color
5
+ from pydantic import Field , IPvAnyAddress , model_validator
6
+ from pydantic_extra_types .color import Color
7
+ from pydantic_settings import BaseSettings , SettingsConfigDict
7
8
8
9
9
10
class DebugToolbarSettings (BaseSettings ):
11
+ model_config = SettingsConfigDict (
12
+ title = "Debug Toolbar" ,
13
+ env_prefix = "DT_" ,
14
+ case_sensitive = False ,
15
+ )
16
+
10
17
DEFAULT_PANELS : t .List [str ] = Field (
11
18
[
12
19
"debug_toolbar.panels.versions.VersionsPanel" ,
@@ -128,11 +135,6 @@ class DebugToolbarSettings(BaseSettings):
128
135
),
129
136
)
130
137
131
- class Config :
132
- title = "Debug Toolbar"
133
- env_prefix = "DT_"
134
- case_sensitive = True
135
-
136
138
def __init__ (self , ** settings : t .Any ) -> None :
137
139
super ().__init__ (** settings )
138
140
loaders = self .JINJA_LOADERS + [PackageLoader ("debug_toolbar" , "templates" )]
@@ -143,6 +145,6 @@ def __init__(self, **settings: t.Any) -> None:
143
145
for extension in self .JINJA_EXTENSIONS :
144
146
self .JINJA_ENV .add_extension (extension )
145
147
146
- @root_validator ( pre = True )
147
- def ci (cls , values : t . Dict [ str , t . Any ]) -> t . Dict [ str , t . Any ] :
148
- return {k .upper (): v for k , v in values .items ()}
148
+ @model_validator ( mode = "before" )
149
+ def ci (cls , data : dict ) :
150
+ return {k .upper (): v for k , v in data .items ()}
0 commit comments