fix problem with TypeVar bound to Model passed as a parameter

This commit is contained in:
Maxim Kurnikov
2019-01-24 18:59:41 +03:00
parent cff5ab463c
commit 5a0f00dde1
6 changed files with 43 additions and 21 deletions

View File

@@ -93,8 +93,13 @@ class InjectAnyAsBaseForNestedMeta(ModelClassInitializer):
class AddDefaultObjectsManager(ModelClassInitializer):
def is_default_objects_attr(self, sym: SymbolTableNode) -> bool:
return sym.fullname == helpers.MODEL_CLASS_FULLNAME + '.' + 'objects'
def run(self) -> None:
if 'objects' in self.model_classdef.info.names:
existing_objects_sym = self.model_classdef.info.get('objects')
if (existing_objects_sym is not None
and not self.is_default_objects_attr(existing_objects_sym)):
return None
if self.is_abstract_model():