Django表单中的有序列表表单值

时间:2011-06-06 07:37:27

标签: django forms

有没有办法提交一个无限的值列表作为表单的一部分,并在Django中将其作为有序列表检索?我看到了这个问题:Django equivalent of PHP's form value array/associative array这是有道理的,但是由于提交的值与单独的POST值具有相同的名称,我认为它们是无序的。

理想情况下,我在前端喜欢这个:

<input type="hidden" name="list[0]" value="blah">
<input type="hidden" name="list[1]" value="blah2">
<input type="hidden" name="list[2]" value="blah3">

并且能够看到在提交表单时哪个列表项发生在哪个位置。

我希望它按照在前端HTML中确定的顺序排序,而不是按值排序。我知道getlist(),但这不会保留顺序。

1 个答案:

答案 0 :(得分:0)

据我所知,方括号表示法是PHP的惯例,而不是HTML本身。

似乎有一个Django解决方法使用点符号生成扩展词典(http://stackoverflow.com/questions/2527476/phps-form-b​​racket-trick-is-to-djangos)。我没有尝试过,但它似乎可以工作

另一个解决方案是自己解析表单名称,从方括号中提取数字并生成自己的有序列表

(免责声明:我只是一个偶然的程序员,并且非常愿意承认我的错误 - 但希望SO审核系统能够将任何愚蠢的评论放到遗忘中)