@@ -61,13 +61,25 @@ def apply_type_shim(cls, _context=None):
61
61
except AstroidImportError :
62
62
base_nodes = MANAGER .ast_from_module_name ("_pydecimal" ).lookup ("Decimal" )
63
63
elif cls .name in ("SplitDateTimeField" , "DateTimeField" ):
64
- base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("datetime" )
64
+ try :
65
+ base_nodes = MANAGER .ast_from_module_name ("_pydatetime" ).lookup ("datetime" )
66
+ except AstroidImportError :
67
+ base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("datetime" )
65
68
elif cls .name == "TimeField" :
66
- base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("time" )
69
+ try :
70
+ base_nodes = MANAGER .ast_from_module_name ("_pydatetime" ).lookup ("time" )
71
+ except AstroidImportError :
72
+ base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("time" )
67
73
elif cls .name == "DateField" :
68
- base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("date" )
74
+ try :
75
+ base_nodes = MANAGER .ast_from_module_name ("_pydatetime" ).lookup ("date" )
76
+ except AstroidImportError :
77
+ base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("date" )
69
78
elif cls .name == "DurationField" :
70
- base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("timedelta" )
79
+ try :
80
+ base_nodes = MANAGER .ast_from_module_name ("_pydatetime" ).lookup ("timedelta" )
81
+ except AstroidImportError :
82
+ base_nodes = MANAGER .ast_from_module_name ("datetime" ).lookup ("timedelta" )
71
83
elif cls .name == "UUIDField" :
72
84
base_nodes = MANAGER .ast_from_module_name ("uuid" ).lookup ("UUID" )
73
85
elif cls .name == "ManyToManyField" :
0 commit comments