我正在创建一个Django应用程序,在开发过程中,我创建了许多具有非常相似结构的类,例如:
class OneAPIListView(generics.ListAPIView):
queryset = models.One.objects.all()
serializer_class = serializers.OneSerializer
filter_class = OneFilterSet
class TwoAPIListView(generics.ListAPIView):
queryset = models.Two.objects.all()
serializer_class = serializers.TwoSerializer
filter_class = TwoFilterSet
...
class <Name>APIListView(generics.ListAPIView):
queryset = models.<Name>.objects.all()
serializer_class = serializers.<Name>Serializer
filter_class = <Name>FilterSet
我想知道是否有办法从字符串["One", "Two", ..., <Name>]
列表中自动生成这些类。我看到其他SO问题like this中有元类,例如我可以做类似
<Name> = type(<Name> + "APIListView", (generics.ListAPIView,), {'queryset' : ???})
但我不知道在我的情况下放入???
的内容,因为变量是对象名称的一部分。