2323)
2424from mypy .plugins import common
2525from mypy .semanal import SemanticAnalyzer
26+ from mypy .subtypes import is_subtype
2627from mypy .typeanal import TypeAnalyser
2728from mypy .types import AnyType , Instance , ProperType , TypedDictType , TypeOfAny , TypeType , TypeVarType , get_proper_type
2829from mypy .types import Type as MypyType
2930from mypy .typevars import fill_typevars
3031from typing_extensions import override
31- from mypy . subtypes import is_subtype
32+
3233from mypy_django_plugin .errorcodes import MANAGER_MISSING
3334from mypy_django_plugin .exceptions import UnregisteredModelError
3435from mypy_django_plugin .lib import fullnames , helpers
@@ -248,12 +249,13 @@ class InjectAnyAsBaseForNestedMeta(ModelClassInitializer):
248249 """
249250 Handle Meta class transformation and validation.
250251 """
252+
251253 @override
252254 def run (self ) -> None :
253255 meta_node = helpers .get_nested_meta_node_for_current_class (self .model_classdef .info )
254256 if meta_node is None :
255257 return None
256-
258+
257259 meta_node .fallback_to_any = True
258260 typed_model_meta_info = self .lookup_typeinfo (fullnames .TYPED_MODEL_META_FULLNAME )
259261
@@ -267,9 +269,11 @@ def run(self) -> None:
267269 if not is_subtype (sym .type , parent_sym .type ):
268270 self .ctx .api .fail (
269271 f'Incompatible type for "{ name } " in Meta (expected "{ parent_sym .type } ", got "{ sym .type } ")' ,
270- sym .node
272+ sym .node ,
271273 )
272274 return None
275+
276+
273277class AddDefaultPrimaryKey (ModelClassInitializer ):
274278 @override
275279 def run_with_model_cls (self , model_cls : type [Model ]) -> None :
0 commit comments