【问题标题】:Django: order formset without form changeDjango:无需更改表单即可订购表单集
【发布时间】:2017-11-25 11:20:55
【问题描述】:

我有一个只有一个字段(家庭成员姓名)的表格。

class FamilyMemeberItem(forms.Form):
    name= forms.CharField(label=_('name'), max_length=20)

现在我希望我的表单由用户定义排序(任意顺序)。比如在一个家庭中,我想先展示A,然后展示B,然后展示C,而创建顺序可能是C,B和A。有没有这样做?

我搜索并意识到我应该在我的表单中添加一个order 字段并覆盖__iter__() 方法。这是唯一的方法吗?如果不改变形式就没有办法做到这一点?

谁能告诉我formset_factorycan_order 字段?当我添加它时,我的表单旁边会加载一个额外的字段,那就是表示该字段编号的整数。我可以更改并保存它以便更改顺序吗?

【问题讨论】:

    标签: django django-forms


    【解决方案1】:

    我回复了您发布的similar question

    我将在这里重复最后一部分:

    如果要将订单存储在数据库中,则需要在模型中定义一个新字段并将订单存储在其中。表单集的顺序只存在于单个请求/响应中,之后就消失了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-24
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      • 2011-04-16
      • 2010-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多