我的高级项目组和我正在为google app engine (python)中的django设计一个表单,我们想知道是否有一种方法可以制作一个动态表单。也就是说,用户可以单击按钮将字段添加到表单中,就像我们有一个部分,用户可以在其中输入有关特殊测试的数据,但根据情况,它们可能是0到相当多的测试。如果用户不打算使用测试,或者只使用很少的测试,我们不想浪费大量的空间,因为大量的字段将是空白的。我们已经看到了使用javascript和html表单实现这一点的例子,但django没有,我们在弄清楚如何做到这一点时遇到了麻烦。对于如何做到这一点,或者这是否可能,有什么建议吗?谢谢!
发布于 2012-02-16 12:22:28
Django Formsets可能会有用...https://docs.djangoproject.com/en/dev/topics/forms/formsets/
发布于 2012-02-16 12:46:37
好吧,如果你不打算使用任何JavaScript,那么用户体验就不会是最好的,但是的,有办法做到这一点。
因为根据定义,Django是生成模板的服务器端,所以您需要预先知道要向最终用户显示多少额外字段。
这只是一个如何使用Django显示4个额外字段的简单示例:
{% for i in 4|get_range %}
Extra field: <input name="extra_{{i}}">
{% endfor %}
即使您使用的是Django Forms,也有一些方法可以更改模板和添加您自己的字段。
https://stackoverflow.com/questions/9307387
复制相似问题