Python表单处理替代方案

3 投票
4 回答
1426 浏览
提问于 2025-04-15 15:50

django.forms 非常好用,几乎能满足我在当前项目中的所有需求,但不幸的是,Google App Engine 让大部分 Django 的功能无法使用,所以把它和我的应用一起打包似乎有点傻。

我还发现了 FormAlchemy,它是 SQLAlchemy 的一个类似于 Django 表单的工具,我打算深入研究一下,但它和 SQLAlchemy 的关系让我觉得可能会遇到一些麻烦。

有没有其他我没考虑过的 Python HTML 表单处理库呢?

4 个回答

2

你也可以看看 formencode,这个工具很通用,可以适用于GAE(谷歌应用引擎)。

3

我不太明白你说的“让大部分Django变得不可用”是什么意思,尤其是“把它和应用打包在一起”这句话。你知道这些文档吗?如果你按照他们的建议去做,也就是:

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

from google.appengine.dist import use_library
use_library('django', '1.1')

那么一旦你把应用上传到谷歌上,django.forms和其他Django功能不是就可以正常使用了吗?

文档里也解释了,

Django 1.0及以后的版本不包含在SDK中。如果你想在自己的电脑上用更新版本的Django测试应用,你必须从Django官网下载安装Django。

但是,

你不需要把更新的Django库添加到你的应用目录中。

也就是说,你不需要“打包它”;谷歌已经在他们的服务器上为你的应用引擎应用提供了这些功能。(有一些依赖关系功能的第三方应用,特别是管理功能,可能不工作——但你自己用应用引擎数据建模库写的Django应用是没问题的!)

13

我越来越喜欢 WTForms 了,它简单、直接,而且非常灵活。这是我不使用 Django 的网页开发工具的一部分。

它是完全独立的,保留了 Django 表单库的一些优点,而在我看来,有些地方做得更好。

撰写回答