已被定义:
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('name', 'account', 'mobile')
然后我定义tem_str = 'UserSerializer'
。
如何将tem_str
转换为UserSerializer对象并以python或django获取其Meta内容?
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('name', 'account', 'mobile')
答案 0 :(得分:0)
您可以使用eval
:
instance = eval('UserSerializer()')
instance.Meta.model # this will access User model
instance.Meta.fields[0] # this will access first field of your User model
但是eval
是dangerous,因此请避免使用它,而可以使用一个字典,该字典可以在其中存储您的类的名称,并且可以使用如下名称来访问它们:
class_dict = {'UserSerializer': UserSerializer}
instance = class_dict['UserSerializer']()
instance.Meta.model
instance.Meta.fields[0]