我创建了这样的对象:
object = eval(someClass+'()')
现在我有了所有文件的循环:
for f in eval(someClass+"._meta.fields"):
如何将数据添加到所有对象字段?
someClass
是一个字符串。
答案 0 :(得分:3)
当您有globals()
,getattr()
和setattr()
时,请勿使用eval()
。
cls = globals()[someClass]
instance = cls()
for f in cls._meta.fields:
previous_value = getattr(instance, f)
setattr(instance, f, previous_value + 'some new value')
我避免使用object
作为变量名;它会掩盖内置的object()
type。