下面几行代码中有语法错误。我已经导入了数学,但是我的更新函数仍然无法工作。告诉我关键字不能是表达式,并引用最下面的3行。知道我做错了什么吗?
StoreLiquor.objects.filter(storeID=ID_Store, liquorID.BottleSize='750 ML', custom=False).update(StorePrice = liquorID.ShelfPrice)
StoreLiquor.objects.filter(storeID=ID_Store, liquorID.BottleSize='750 ML', custom=False).update(StorePrice = (float(liquorID.OffPremisePrice)) + (float(S750Increase)))
StoreLiquor.objects.filter(storeID=ID_Store, liquorID.BottleSize='750 ML', custom=False).update(StorePrice = (float(liquorID.OffPremisePrice) * (float(S750Increase)/100)) + float(liquorID.OffPremisePrice))
不能使用
liquorID.BottleSize
,它无效。只能使用有效的变量名改用
liquorID__BottleSize
。相关:Why django has to use double underscore when making filter queries?
我想应该是这样的
不能在参数名中使用点,因此这部分
liquorID.BottleSize='750 ML'
会导致SyntaxError
要在
filter
中使用相关模型,请使用跨越关系的查找https://docs.djangoproject.com/en/dev/topics/db/queries/#lookups-that-span-relationships
所以你的陈述应该是这样的:
相关问题 更多 >
编程相关推荐