用于表格的表格列表的Django表单/表单集

时间:2014-05-17 05:23:31

标签: python django forms formset

一张图片胜过千言万语。这是我正在努力实现的目标:

tabular_formset

这很简单,只需在模板中手动创建一个表,就像这样:

<form>
  <table class="table">
    <thead><tr><th>{% trans 'Name' %}</th><th>{% trans 'Available Quantity' %}</th></tr></thead>
    <tbody>
      {% for p in products %}
      <tr><td>{{p.name}}</td><td>{{p.available}}</td><td><input name="{{p.id}}" type="number" /></td></tr>
      {% endfor %}
    </tbody>
  </table>
<form>

然而,这样做会使处理提交的表单数据以及进行错误验证变得麻烦。

我更喜欢用django形式(formset似乎更合适)。我已经尝试了this approach,但这并不能让我更容易实现。

这是我(相关)模型的缩小版本:

class Product(models.Model):
    name = models.CharField("Name", max_length=50)
class OrderItem(models.Model):
    product = models.ForeignKey('Product', verbose_name=_("Product"))
    quantity = models.FloatField("Quantity")

在我不考虑的django中有优雅的方式吗?

0 个答案:

没有答案