我setattr()
用来设置Django模型的新对象的属性。
obj = apps.get_model(app_label="theme", model_name="MyModel")
setattr(obj,"myCol",100)
obj.save()
我收到此错误:TypeError: unbound method save() must be called with DataPopulationTracts2016 instance as first argument (got nothing instead)
。
我想使用将新的实例保存MyModel
到模型中,get_model()
并使用和setattr()
制作模型的新实例并设置其属性。如何制作get_model()
和setattr()
使用save()
?
编辑:为澄清起见,我正在做一个manage.py命令,用户在其中输入要为其添加新记录的模型和列。
get_model
获取模型类。因此,您应该创建一个实例:
Model = apps.get_model(app_label="theme", model_name="MyModel")
obj = Model()
setattr(obj,"myCol",100)
obj.save()
注意:我假设您在这里创建了一个简化的示例。但是,如果您真的不需要额外的动力,那么您应该更喜欢仅使用香草:
MyModel.objects.create(myCol=100)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句