【发布时间】:2018-02-09 00:15:23
【问题描述】:
我有一个 javascript 代码来创建基于动态添加的特征的所有产品组合。 该脚本的 HTML 结果是:
<form id="myWizard" action="" method="post" role="form">
<table>
<tbody>
<tr>
<td>1</td>
<td><select id="combination[0].product" name="combination[0].product">
<option value="25">
product_desc pc.10
</option>
<option value="26">
product_desc pc.5
</option>
<option value="21">
product_desc
</option>
</select></td>
<td><input readonly="readonly" value="5.00" id="combination[0].price" name="combination[0].price" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="a" id="combination[0].color" name="combination[0].color" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="1" id="combination[0].quantity" name="combination[0].quantity" class="form-control" type="text" /></td>
</tr>
<tr>
<td>2</td>
<td><select id="combination[1].product" name="combination[1].product">
<option value="25">
product_desc pc.10
</option>
<option value="26">
product_desc pc.5
</option>
<option value="21">
product_desc
</option>
</select></td>
<td><input readonly="readonly" value="5.00" id="combination[1].price" name="combination[1].price" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="a" id="combination[1].color" name="combination[1].color" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="5" id="combination[1].quantity" name="combination[1].quantity" class="form-control" type="text" /></td>
</tr>
<tr>
<td>5</td>
<td><select id="combination[8].product" name="combination[8].product">
<option value="25">
product_desc pc.10
</option>
<option value="26">
product_desc pc.5
</option>
<option value="21">
product_desc
</option>
</select></td>
<td><input readonly="readonly" value="5.00" id="combination[8].price" name="combination[8].price" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="c" id="combination[8].color" name="combination[8].color" class="form-control" type="text" /></td>
<td><input readonly="readonly" value="50" id="combination[8].quantity" name="combination[8].quantity" class="form-control" type="text" /></td>
</tr>
</tbody>
</table>
</form>
当然可以有更多的特征(例如类型、材料...)。
如何使用 request.POST 处理它?我尝试了 getlist 但没有成功。 作为记录,我使用 Django 1.9。 有什么办法可以从这个请求中获取字典列表,所以我会得到类似的东西:
list = [{'product_id': '25', 'price':'5.00', 'color':'c', 'quantity':'50'},
{'product_id': '26', 'price':'5.00', 'color':'a', 'quantity':'1'},
{'product_id': '21', 'price':'5.00', 'color':'a', 'quantity':'5'}
]
还是类似的?
【问题讨论】:
-
我们可以假设表格被
<form method="POST">元素包围吗? -
是的。它在
<form>elalement 里面。我更新了问题。 -
表中没有像 12.22 或 2.22 这样的价格(它们都是 5.00),也没有像黑色或蓝色这样的颜色('a' 或 'c')。请确保您的示例输入对应于您想要的示例输出。
标签: python django python-3.x django-views