django.forms
非常好,并且几乎完全符合我当前项目的要求,但遗憾的是,Google App Engine使得Django的大部分内容无法使用,因此将其与应用程序一起打包似乎有点傻。
我还发现了FormAlchemy,它是一个类似于Django表单的SQLAlchemy模拟器,我打算完全探索它,但它与SQLAlchemy的关系表明它也可能给我带来一些麻烦。
我有没有考虑过python的HTML表单处理库?
答案 0 :(得分:13)
我已经成长为爱WTForms,它简单,直接且非常灵活。它是我的django免费网络堆栈的一部分。
它完全是独立的,并且继承了django表单库的优点,而imho有更好的东西。
答案 1 :(得分:3)
我不确定你的意思是“让Django的其余部分无法使用”,尤其是“将它与应用程序一起打包”。你熟悉the docs吗?如果你只是按照他们的建议去做,即
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
from google.appengine.dist import use_library
use_library('django', '1.1')
不要django.forms和Django的其余部分为您工作(一旦您将应用程序上传到Google)?
正如文档也解释的那样,
Django版本1.0以后都没有 包含在SDK中。测试你的应用程序 更新版本的Django 电脑,你必须下载和 从Django安装Django 网站。
但
您无需添加更新版本 Django库到您的应用程序 。目录
即。你不必须“打包”;它已经在Google的服务器上由Google提供给您的应用引擎应用。 (一些依赖于关系功能的第三方应用程序,特别是管理员,不起作用 - 但是你自己的Django应用程序,使用他的App Engine数据建模库编写,会很好! - 。)。
答案 2 :(得分:2)
您还可以查看formencode,它是通用的,以便您可以在GAE中使用它。
答案 3 :(得分:1)
您是否有更具体的理由不想使用django.forms?在几个项目中,我已经非常成功地使用了django的各个部分,而且没有任何问题。
顺便说一下,有几个补丁可以让django在app-engine中工作,虽然我假设你已经考虑并放弃了它们。