22
33from jinja2 import BaseLoader , ChoiceLoader , Environment , PackageLoader
44from 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
78
89
910class DebugToolbarSettings (BaseSettings ):
11+ model_config = SettingsConfigDict (
12+ title = "Debug Toolbar" ,
13+ env_prefix = "DT_" ,
14+ case_sensitive = False ,
15+ )
16+
1017 DEFAULT_PANELS : t .List [str ] = Field (
1118 [
1219 "debug_toolbar.panels.versions.VersionsPanel" ,
@@ -128,11 +135,6 @@ class DebugToolbarSettings(BaseSettings):
128135 ),
129136 )
130137
131- class Config :
132- title = "Debug Toolbar"
133- env_prefix = "DT_"
134- case_sensitive = True
135-
136138 def __init__ (self , ** settings : t .Any ) -> None :
137139 super ().__init__ (** settings )
138140 loaders = self .JINJA_LOADERS + [PackageLoader ("debug_toolbar" , "templates" )]
@@ -143,6 +145,6 @@ def __init__(self, **settings: t.Any) -> None:
143145 for extension in self .JINJA_EXTENSIONS :
144146 self .JINJA_ENV .add_extension (extension )
145147
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