django - 如何通过一个
问题描述
解决方案
- 你不需要
<ul>
在这里使用标签。
你可以写:
Select Size:
<select name="sizes">
{% for size in product.sizes.all %}
<option value="{{size.nameSize}}">{{size.nameSize}}</option>
{% endfor %}
</select>
结果是一样的。
- 由于您没有指定
add_item(request, pk)
仅通过 POST 起作用,因此您不能指望 request.POST 总是会出现。
最好这样写你的代码:
if request.POST:
# do something
如果您没有在模板中为您的选择指定默认值,则sizes
不会在您的request.POST
. 你可以这样写,以确保你得到一些价值:
request.POST.get('sizes', 'some_default_value')
- 仅仅因为你得到
MultiValueDictKeyError
你需要看看你得到什么请求。也许你得到 QueryDict,那么你需要提取第一个值。例如,请参阅这个SO question。例如,打印您的 request.POST 或检查类型。
推荐阅读
- macos - Datagrip 致命错误,在 Macbook Pro 2020 M1 芯片 Big Sur 11.6 上崩溃(第 1 部分)
- xml - 使用golang时浏览器错误地解释了xml标签(我认为)
- html - 如何在背景颜色悬停更改上保持容器的边框半径?
- javascript - .then() 中的函数没有被调用
- salesforce - SOSL 搜索存档活动
- vba - 无法将时间戳格式化为 vba 中的日期
- python - 如何在同一情节中制作虚线和粗线
- javascript - Sequelize:如何从字段中返回特定值
- c# - 选择案例不适用于 Unity 中的 Text gameObject 比较字符串
- reactjs - ReactJs:SyntaxError - firefox 中的无效正则表达式组