对于使用Pyramid Web框架的新(Python)Web应用程序,我想使用表单绑定和验证库,到目前为止找到了simpleform和deform。有没有人有这些经验,可以告诉我为什么我应该选择其中一个?我没有使用ORM,只是说POPO。
我想我现在更喜欢最简单的。
答案 0 :(得分:11)
我对这两者都没有丰富的经验,但到目前为止,这是我所学到的。
他们都使用漏勺(我非常喜欢)来定义和验证表格。在我看来,真正让他们与众不同的是他们的渲染机制。在这方面,变形是最直接的,因为它允许你通过在模板中执行form.render()来渲染整个表单。另一方面,使用simpleform,您必须手动渲染每个字段。根据您的需要,这可能是好事也可能是坏事。
simpleform的缺点是目前没有明确的方法来处理模板中的序列模式。
编辑:另外,在我看来,变形有更好的文档可用。
答案 1 :(得分:3)
我还没有使用过simpleform,但我一直在使用deform来处理我正在进行的项目。 deform允许您从漏勺模式渲染模板,这非常方便。此外,如果违反了架构,您只需调用ValidationFailure.render()
(在捕获ValidationFailure
异常之后),并且可以使用表单呈现您可以自定义的消息。我正在努力解决渲染整个表单和逐个渲染之间的选择。如果你可以将组件组合在一起进行渲染,那将是非常好的。
答案 2 :(得分:2)
虽然这是第三种选择,但你考虑过ToscaWidgets2吗?
从简单的形状和变形的快速浏览一下,在我看来,Toscawidgets2是这两者之间的功能和简单的中间位置。
甚至还有tutorial for using it with Pyramid,只需删除数据库部分并将表单值作为字典提供。
答案 3 :(得分:1)
为了您的信息,变形由以下人员使用: