我和django模特一起工作。我想传递一个模型字段作为变量。鉴于我的职能:
from django.models import models
def updatetable(value, fieldtitle, tablename, uid, refname):
workingobj = tablename.objects.get(refname=uid)
currentvalue = getattr(workingobj, fieldtitle)
setattr(workingobj, fieldtitle, currentvalue + value)
workingobj.save()
return
我试过:
updatetable(len(sr), 'posts_added', managementmetrics, startdtg, refname=update_dtg_start)
updatetable(len(sr), 'posts_added', managementmetrics, startdtg, refname='update_dtg_start')
甚至
updatetable(len(sr), 'posts_added', managementmetrics, startdtg, {refname:update_dtg_start})
出现错误:无法将关键字“refname”解析到字段中。选项有:长度更新,更新完成,更新开始
我尝试过为**kwargs切换refname,但似乎仍然无法让它接受字段值
问题不在于如何调用这个函数:函数本身并不是您想要的
您需要更改调用
get
的方式。您需要使用dictthere,而不是直接传入refname:现在您只需以正常方式调用函数:
(还应考虑重命名
tablename
参数:传递的不是表名(表示字符串),而是模型类对象。)相关问题 更多 >
编程相关推荐