JavaScript中的下一代表单
项目描述
gocept.jsform fanstatic集成
这是gocept.jsform的最后一个版本。未来的更新将使用其新名称ajja发布,请参阅https://pypi.ac.cn/project/ajja/
用法
使用Fanstatic包含资源
from gocept.jsform import jsform jsform.need()
这需要所有必要的资源,例如 jquery、knockout、handlebars、小部件以及设置和运行 gocept.jsform 本身的代码。
文档
开发
变更日志
3.0.3 (2019-09-06)
修复3.0.0中引入的额外JavaScript文件缺失的资源入口点。
3.0.2 (2019-09-04)
支持在 setuptools >= 30 上安装。
3.0.1 (2016-03-17)
引入新的模板处理API。
get_template(id) 返回模板的编译版本。
register_template(id, template, description)
允许您在给定的id下注册模板
可以处理预编译的模板、纯HTML或HTML的id选择器到包含HTML的DOM节点
list_templates() 返回具有id和描述的模板列表
大幅改进文档。
开始测量代码覆盖率。
3.0.0 (2016-02-03)
将src/templates.js中预编译的handlebars模板提供给服务,以完成bower集成。(#23)
重命名模板源文件。现在可以通过应用中的 gocept.jsform.templates 变量访问它们。这是一个向后不兼容的更改。
更新版本依赖。
根据具体的jquery(-ui)版本依赖不是必要的,因为gocept.jsform支持jquery 1.x和2.x。另外,为knockout和knockout-mapping添加显式的版本依赖,因为意外更新可能会破坏gocept.jsforms模型行为。
2.8.0 (2015-12-09)
添加了分组小部件和表格小部件,它们使用列表小部件以分组/表格形式渲染项目。(#38)
添加了新的模板来渲染数字。(#15)
如果在 __init__ 期间表单节点的选择器不匹配,则抛出错误。(#32)
当ListWidget.add_item收到格式不正确的AJAX响应时抛出错误。(#33)
将 form-control CSS类添加到textarea模板中。
2.7.2 (2015-12-04)
重构单选按钮模板,使其使用与对象模板相同的源API。
2.7.1 (2015-12-04)
修复了语法错误。
2.7.0 (2015-12-04)
在保存所有剩余字段时,在UI中抑制成功消息。
添加新的模板,用于渲染单选按钮列表。
2.6.3 (2015-11-18)
添加了一些翻译。
禁用必填的select字段的占位符。
2.6.2 (2015-11-17)
统一保存表单数据的位置。
2.6.1 (2015-11-16)
修复了在直接提供表单数据而不是通过加载URL检索数据时初始化源的问题。
确保 after-load 总是异步触发。
2.6.0 (2015-11-12)
添加选项以切换单个字段或整个表单到只读模式。
2.5.1 (2015-11-11)
在bower包中使用 bower-knockout-mapping 而不是直接提供服务映射插件。(仅影响 gocept.jsform 的bower包)
2.5.0 (2015-11-06)
添加了一个列表小部件,该小部件使用jsform显示列表项的编辑表单。
删除Handlebars的版本限制,因为与Handlebars 4相关的错误特定于使用gocept.jsform的应用程序。
2.4.0 (2015-09-08)
将Handlebars的版本锁定为3.0.3,因为切换到新的大版本应该是故意的,而不是偶然的。
2.3.0 (2015-07-31)
将状态消息显示时间改为3秒,而不是1秒。这可能会修复Jenkins中的测试失败。
引入了保存调用可以操纵另一个小部件的源值的情况。这对于下拉列表很有用,其中可用的值列表依赖于另一个下拉列表的选中值。
2.2.0 (2015-06-17)
修复了验证错误消息的显示。
当JSON响应中的 message 提供时,可以显示自定义HTTP错误消息。
2.1.0 (2015-04-09)
如果AJAX结果是HTML而不是JSON数据,则显示HTML(在大多数情况下是500错误或登录页面)。(#11838)
2.0.0 (2015-03-26)
将令牌作为 <option value> 属性渲染,这样我们就可以兼得两者之长:内部我们处理对象,但DOM看起来“正常”(并且其他基于DOM的库,如select2,可以与之接口)。
将浏览器资源打包为bower包。
从json-template.js切换到Handbars.js进行模板化。(#13804)
修复了使用具有动态选项(源)的select字段时在UI创建时触发空值保存请求的bug。
1.2.0 (2014-10-22)
改进了对象和多选字段的处理方式,使得加载的值实际上是值本身,而选择选项作为源字段选项传递。这是一个重要的向后不兼容的更改。
添加了multiple字段选项,当其值为真且选择的类型为对象时,该字段被视为对象列表。当使用默认模板时,这会将选择小部件转换为多选。
当通过JS API而不是通过HTTP作为JSON加载表单值时,假设是完整的对象,而不是要包含的标记。
添加textarea模板。
添加了必填字段的概念,这些字段在为空时无法保存。
增加了更多Bootstrap 3兼容性。
简化了表单元素的HTML标记。
移除了包元数据的测试额外依赖。
使用classy类。
将HTTP错误响应视为不可恢复的错误。这将其与超时和连接错误区分开来。
在Form上添加了loaded属性,这是一个Deferred对象,客户端可以检查加载是否完成。这对于测试非常有用,例如。
selenium.waitForEval( '$("#jsform").data("form") && ' '$("#jsform").data("form").loaded.state()', '"resolved"')
公开get_template函数,以便在Form类外部重用。
如果指定为空字符串的form_template,则仅使用现有的表单DOM节点而不应用任何模板。
添加jQuery插件$().jsform_submit_button(callback),该插件设置一个保存jsform并成功保存后调用函数的按钮。
1.1 (2014-04-07)
使用after-save触发器传播服务器的保存消息。
添加了显示和清除状态消息的基础设施,用于在AJAX调用期间宣布HTTP故障。
在控件和状态消息中同时显示和清除字段相关错误。
在保存数据时,将状态值为“成功”之外的所有JSON响应视为错误。在不理解响应的情况下完全放弃,在连接错误后重试,或者在调用retry()时重试。
添加了API方法save_remaining(),它会导致任何尚未修改的字段保存。虽然这应该只保存从服务器加载的初始值,但它可以将相同的验证和错误处理应用于所有字段。
添加了API方法when_saved(retry),它返回一个承诺,该承诺汇总了任何挂起和完成的保存调用,要么传播单个字段的重试行为(默认),要么在服务器错误时失败。
在保存字段时提供视觉提示和状态消息。
进行了一些重构,以提高代码的可读性。
使代码通过jshint检查。
使默认和当前不可覆盖的状态消息行为与Bootstrap 3兼容
在更新字段时正确取消订阅更改处理程序。
添加了简单的本地化。
1.0 (2013-12-13)
删除了console调用,因为并非所有浏览器都能理解它们。
0.8 (2013-12-10)
修复:如果表单模板以换行符开头,IE8中的jsform不会渲染。
0.7 (2013-12-03)
添加了将CSRF令牌与每个请求一起发送的能力。此令牌必须通过id csrf_token(可自定义)在DOM中可用。
添加了javascript资源的精简版本。
0.6 (2013-09-06)
错误修复:使用indexOf而不是startsWith,因为后者在所有浏览器中不可用。
0.5 (2013-09-06)
在表单标签上声明for属性。
存储“更改时保存”订阅,以便可以取消。
忽略数据字段的null值。(#1)
0.4 (2013-08-27)
使定义模板为文件系统上的模板文件成为可能。
0.3 (2013-08-27)
添加事件after-load和after-save。
修复JSON序列化以能够处理Knockout可观察对象。
已添加表单类的 reload 功能。
0.2 (2013-08-26)
当表单渲染时,可以预先选择数组中的值。
修改了表单提交行为
默认提交类型不是 GET,而是 POST。可以通过 save_type 选项进行更改。
数据现在以 JSON 类型提交。
0.1 (2013-08-17)
初始版本
项目详情
gocept.jsform-3.0.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4f49f280efbb29fc72c770da10ed96935663f848103cf926f94a0c9cdfbb43ae |
|
MD5 | 7a44424400e94b430129c192d91164b7 |
|
BLAKE2b-256 | b3bcf80e560a932d9fe32ba5fc69a157aacfe8c9e990753d74b9a53338afd80f |