如果我有一个基础工厂和一个子数据工厂:
Class BaseFactory:
def __new__(cls, *args, **kwargs):
return cls.Meta.model(*args, **kwargs)
Class DataFactory(BaseFactory):
def __new__(cls, *args, **kwargs) -> Data
return super().__new__(cls, *args, **kwargs)
class Meta:
model = Data
有没有一种方法可以避免在子级中使用__new__
(我必须在所有子级中都这样做),而是在父级中使用类似TypeVar
的通用名称?
我无法确定https://github.com/python/typing/issues/58还是Can you annotate return type when value is instance of cls?上有更好的方法