Django动态更改表单上的必需属性

时间:2013-04-04 16:39:02

标签: django forms dynamic

我想动态更改表单字段上的必需属性。这样做的原因是因为用户可以选择“与先前用户相同的地址”是/否。

如果是,那么它隐藏了前端的字段,我想在验证/处理模型时默认不需要字段。

1 个答案:

答案 0 :(得分:5)

以下是对此主题的一个非常好的讨论:Dynamic form requirements in Django

如果你只想做一些非常简单的事情,我可以想到两种非常基本的方法:

  1. 将字段设置为不需要,并使用自定义清除功能检查它是否存在。 (如果你想在字段标题后面出现一个星号,只需使用一些简单的javascript。)
  2. 有两种不同的形式 - 一种需要字段,一种不需要 - 并使用javascript显示正确的表单。
  3. 对于你提出的问题,第一个解决方案显然要简单得多,但如果你想做一些更复杂的事情,你可能更喜欢第二个选择。