python - int() 参数必须是字符串、类似字节的对象或数字,而不是 'NoneType' Django 表单
问题描述
我在结帐视图上提交表单时遇到问题。首先,我的主视图上有一个表格,我在其中询问物品的数量。我将数据发布到我的结帐视图以在我的前端做一个总结。在我的结帐视图上,我有另一个表单,我在其中询问电子邮件和姓名,当我尝试提交结帐表单时,我有一个 typeError。
int() argument must be a string, a bytes-like object or a number, not 'NoneType'
这是我的结帐视图
# My view
@login_required(login_url='login')
def checkout(request):
data = request.POST.copy()
region = data.get('region-select')
plateform = data.get('plateform-select')
quantity = data.get('quantity-field')
quantity = int(quantity)
price = quantity * 3.99
context = {
'region':region,
'plateform':plateform,
'quantity':quantity,
'price':price
}
return render(request, 'main/checkout.html', context)
我不明白为什么会发生这种情况,因为数据在我的模板中呈现
<h1 class="title is-5" style="margin-bottom:5px;"> {{price|floatformat:2}} EUR </h1>