我最近在“估算创建(财务)”中添加了一个可选的“费用模型”选项。 现在,当我尝试编辑语句时,可选成本更新之后创建的语句成功更新。但是以前没有可选的费用模型属性的语句在更新时会失败。
这就是我尝试过的
if hasattr(instance,"optional_amount"):
optional_estimate_amounts = optional_estimate_amounts_formset.save(commit=False)
for f in optional_estimate_amounts:
f.estimate = instance
f.save()
for obj in optional_estimate_amounts_formset.deleted_objects:
obj.delete()
else:
for optional_estimate_amounts in optional_estimate_amounts_formset:
optional_amount_description = optional_estimate_amounts[
'optional_amount_description']
optional_amount = optional_estimate_amounts['optional_amount']
OptionalEstimateAmounts(
estimate=data,
optional_amount_description=optional_amount_description,
optional_amount=optional_amount
).save()
当前,它引发类型错误。 我想知道如果尝试编辑估算时没有实例,如何为现有估算实例创建一个新的可选金额模型属性?
答案 0 :(得分:0)
NeverMind,setAttr()是我一直在寻找的东西。如果hasAttr()返回false,请使用setAttr添加该属性