UnboundLocalError:赋值前引用的局部变量()
Posted
技术标签:
【中文标题】UnboundLocalError:赋值前引用的局部变量()【英文标题】:UnboundLocalError: local variable () referenced before assignment 【发布时间】:2021-10-08 12:48:33 【问题描述】:要理解代码:
shipment_booking 是我的餐桌名称。
我想检查我的表格中的“ord”值是否为“是”
如果我的“ord”字段值为“yes”,则返回“pre-budget”页面。
代码:
def bkp1(request):
orderv="yes"
allorder=shipment_booking.objects.all()
return render(request, 'bkp1.html')
if request.method=='POST'and 'pbd' in request.POST:
for shipment_booking in allorder:
o=shipment_booking.ords
if orderv==o:
return render(request, 'Pre-Budget.html')
else:
return render(request, 'bkp1.html','msg':'Please Add
Order Details')
else:
return render(request, 'bkp1.html')
【问题讨论】:
在哪一行抛出错误?你能正确对齐你的代码并告诉确切的错误消息吗? 顺便说一句,为什么return render(request, 'bkp1.html')
在allorder
之后?
你能把你定义shipment_booking
的代码贴出来
【参考方案1】:
似乎您使用的是 shipping_booking 未定义变量而不是真正的 Django 模型名称。你的代码应该是这样的
allorder = ShipmentBooking.objects.all()
【讨论】:
这将取决于它是如何导入的,如果它被导入为import .... as shipment_booking
不应该这样,因为这不符合标准 PEP8 :/
他提到 shipping_booking 是我的表名。所以这应该是Model中的一个对象以上是关于UnboundLocalError:赋值前引用的局部变量()的主要内容,如果未能解决你的问题,请参考以下文章
Python 3:UnboundLocalError:分配前引用的局部变量[重复]
UnboundLocalError:分配前引用的局部变量“公会”
机器人框架:UnboundLocalError:分配前引用的局部变量“cellValue”
分配前引用的 /blog/search/ 局部变量 'cd' 处的 UnboundLocalError