从django模板提交通过POST传递其他数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从django模板提交通过POST传递其他数据相关的知识,希望对你有一定的参考价值。

使用Django模板显示input text表。

但是在view中,只有request.POST中存在此表中的输入。 POST中没有动态创建的输入。

的test.html

<form class="form-horizontal" method="post" enctype='multipart/form-data' id="subscription-form">
....
....
<tbody class="draggable-column">
    {% for product in products %}
    <tr>
        <td class="hidden-xs">{{forloop.counter}}</td>
        <td class="hidden-xs">{{product.title}}</td>
        <td class="hidden-xs">{{product.weight}}</td>
        <td class="" >{{product.yearly_consumption}}</td>
        <td><input type="text" id="{{product.id}}_jan" data-id="{{product.id}}_jan" class="user-action"></td>
        <td><input type="text" id="{{product.id}}_feb" data-id="{{product.id}}_feb" class="user-action"></td>
        <td><input type="text" id="{{product.id}}_mar" data-id="{{product.id}}_mar" class="user-action"></td>
         ......
         ......
         <td><input type="text" id="{{product.id}}_total" data-id="{{product.id}}_total" readonly="readonly" class="total-quantity"></td>
     </tr>
     <input type="hidden" value="{{product.weight}}" id="{{product.id}}_weight">
     <input type="hidden" value="{{product.is_winter}}" id="{{product.id}}_winter">
     {% endfor %}
</tbody>
....
....
</form>

此表输入在django视图的POST中不可用。

怎么能在POST中提供这个?

答案

你需要提到每个name attributeinput tags

<tr>
   <td class="hidden-xs">{{forloop.counter}}</td>
   <td class="hidden-xs">{{product.title}}</td>
   <td class="hidden-xs">{{product.weight}}</td>
   <td class="" >{{product.yearly_consumption}}</td>
   <td><input type="text" id="{{product.id}}_jan" data-id="{{product.id}}_jan" name="{{product.id}}_jan" class="user-action"></td>
   <td><input type="text" id="{{product.id}}_feb" data-id="{{product.id}}_feb" name="{{product.id}}_feb" class="user-action"></td>
   <td><input type="text" id="{{product.id}}_mar" data-id="{{product.id}}_mar" name="{{product.id}}_mar" class="user-action"></td>
   <td><input type="text" id="{{product.id}}_total" data-id="{{product.id}}_total" name= "{{product.id}}_total" readonly="readonly" class="total-quantity"></td>
 </tr>
     <input type="hidden" value="{{product.weight}}" id="{{product.id}}_weight" name="{{product.id}}_weight" >
     <input type="hidden" value="{{product.is_winter}}" id="{{product.id}}_winter" name="{{product.id}}_winter">
{% endfor %}

或者提供适合您目的的任何名称

以上是关于从django模板提交通过POST传递其他数据的主要内容,如果未能解决你的问题,请参考以下文章

Django:从其他表单传递参数以提交按钮

Django:将模板值发布到视图

无法将参数从模板传递到 Django 视图

如何将数据值从视图传递到 Django 中的模板?

Django 模板未从数据库呈现

Django从Javascript函数发布数据