浏览 2412 次
锁定老帖子 主题:django的newforms的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-12-09
如果有两个以上的select form,而这些select的options是相互关联的,为简化问题,我们假设有两个select, sa和sb。sb的options依赖于sa的选择,这个可以通过ajax来实现,没有问题。 问题是,这时,在django的form中,生成sb的choicefield中并没有这些options,这样在sb的clean()的时候,导致错误,进而导致整个form不能通过validate。 一句话以概之,就是动态form的问题。 有人遇到过类似问题吗?如何解决的? btw,django不把ajax整合进来真是顽固不化,一点不考虑使用者的意见。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-12-09
验证这东西有时候确实有些讨厌。
对于select,他非要给你验证当前选中的值是否是select里的。 所以没办法,不管UI是否需django生成select都需要将用到的值放到select里。 |
|
返回顶楼 | |
发表时间:2007-12-09
再废话一下。
Django源于现实中的项目,因此很多特性都是根据该项目来的。 因此如果你的项目和他的项目不是一道的,就很可能有不少不顺的地方。 |
|
返回顶楼 | |
发表时间:2007-12-09
做了一个丑陋的tick,解决了这个问题:
当request请求为post时,先从post参数中取出sa的值,并根据sa的值查找sb的options,赋给了sb.choices,让sb的validate通过。 其实,newforms的field应该提供让用户来选择,是否需要validate。 |
|
返回顶楼 | |