跳转到主要内容

瓶盖相关代码和想法的试验场。

项目描述

https://circleci.com/gh/level12/keg-elements.svg?style=svg https://codecov.io/github/level12/keg-elements/coverage.svg?branch=master

瓶盖元素是一组辅助函数和基类,用于使用瓶盖或瓶盖扩展构建应用程序。

简单示例

有关简单示例和应用程序设置的清单,请参阅文档中的入门指南

开发

要开发此项目,请先运行我们的测试

git clone https://github.com/level12/keg-elements keg-elements-src
cd keg-elements-src
tox

然后您可以通过查看tox.ini来了解我们的开发过程。特别是,我们

  • 使用py.test进行测试(和覆盖率分析)

  • 使用flake8进行代码风格检查

预览README

在更新README时,请使用restview --long-description来预览更改。

提交前钩子

您应该通过运行以下命令来安装提交前钩子:

pre-commit install

这将确保您的代码准备好进行审查。

问题 & 讨论

请将问题、评论、错误、功能请求等发送至:https://github.com/level12/keg-elements/issues

变更日志

0.12.0 版本发布于 2024-06-28

  • 支持 python 3.12 (2fcecec)

  • 更新 Sentry 集成以支持 Sentry SDK 2+ (b40e3c8)

0.11.0 版本发布于 2024-01-16

  • 使用 Sentry SDK 进行 cron 监控设置和签到 (405f677)

0.10.0 版本发布于 2023-12-01

  • 在测试中修复 flake8 问题 (f6d862e)

  • 支持 wtforms 3.1 的 choices 迭代变化 (3ec5abe)

0.9.1 版本发布于 2023-05-22

  • 支持使用 Sentry 监控作业 (8bd9cb5)

0.9.0 版本发布于 2023-03-03

  • 支持 SQLAlchemy 2.0 (fce6248)

  • 支持 keg 测试应用上下文变化 (4122e9e)

  • 修复文档中的升级说明 (514b8ff)

0.8.0 版本发布于 2022-12-12

  • 修复表单视图模板中的 select2 包含,更新文档模板 (d01f7dc)

  • 支持渲染 WTForms 表单字段 (e0e3136)

  • 解决 Bootstrap 4 中的单选按钮 ID 重复和错误显示 (74b7215)

  • 向后不兼容 将 MethodsMixin.edit 中的 oid kwarg 更改为 _oid (4d67937)

  • 向后不兼容 用 fake 替换 testing_create,以简化 (747d208)

  • 删除剩余的 Python 2 支持 和 six 使用 (decd030)

  • 为 CI 添加稳定的依赖项集合 (1fbcea4)

  • 向后不兼容 从表单宏模板中删除 tabindex 显式参数 (09c4e8b)

  • 添加通用的 form-view.html 和 grid-view.html 模板 (1eb8db2)

  • 修复 Bootstrap 4 在水平表单中的使用 (57fc4ab)

  • 内置 datetime 表单控件助手,命名空间为 keg-elements (d098f07)

  • 更改用于表单级别的错误类,以便 Bootstrap 4 能够显示 (55b9c67)

  • 允许在表单宏中传递名称和/或 ID 到表单中 (fe1ac26)

  • 启用跳过的 sqlite 测试并修复会话损坏 (90e2d88)

  • 向 keg-elements 基础表单添加表单标识字段 (941e4a7)

  • 添加查询级别的插入/更新方法,以补充 ORM 级别的添加/编辑 (60fac30)

  • 防止在未应用查询时选择框选择项被错误地过滤 (aef1cf0)

  • 处理关系表字段中的 SA ORM 属性和混合属性(97244de

  • 解决库警告和弃用(9ecb616

0.7.2 版本发布于 2022-03-04

  • 调整表混入接口以明确与表相关的方法,并使覆盖更容易(2a326b5

0.7.1 版本发布于 2022-03-04

  • 在无效字段名上添加方法错误处理(9511f73

0.7.0 版本发布于 2022-03-04

  • 为表视图添加基础类/混入(fcf8f02

  • 多选字段不会强制将每个选项转换为对象,存在性能问题(0ccd609

  • 在无效字段名上编辑方法错误处理(98ad0b0

  • 因子测试列数据跳过(639bcb8

  • 在测试数据生成中支持 SA 列属性(1148633

  • 支持 WTForms 3.0.0,包括表级验证错误和字段标志更改(794ce75

0.6.0 版本发布于 2021-09-10

注意:由于以下表字段描述更改,从之前的 UX 中可以移除 JS 弹出层的使用。

  • 将表字段描述移动到更可见的位置(f7a287e

  • 解决 jinja2 标记弃用问题(86cfe0e

  • 添加列检查以验证日期/时间默认值未设置为实例化值,修复 #149(d8489d1

  • 从测试中删除 python 3.6,添加 3.9(《93ee3df》)

  • 支持在 GridView 中使用 webgrid 表单提交(需要 webgrid 的表单参数加载器)(《b945bb4》)

0.5.30 版本发布于 2021-02-02

  • 在测试中添加随机数生成的量级/范围/类型指令(《a9ca44f》)

  • 在 readthedocs.io 上设置文档(《f68c812》)

0.5.29 版本发布于 2021-01-29

  • 为从 ORM 生成选择字段添加 RelationshipField 和 RelationshipMultipleField(《8d90b5a》)

  • 为表生成添加表元选项 include_required_foreign_keys(《8d90b5a》)

  • 为字段验证添加标准测试 FormBase(《2b0ee8a》)

  • 允许模型表子类利用超类的 FieldsMeta(《84dcc1f》)

  • 在没有提供元信息时默认使用空白 FieldMeta 对象(《2457605》)

  • 提供通用的 id/value 查找表模型混入(《a392941》)

  • 添加测试_set_related 实体方法以封装相关对象创建(《e6fe3d9”)

0.5.28 版本发布于 2020-11-13

  • 为枚举列自动生成表字段选项(《a074cd2”)

  • 修复 mssql CI(《4ec0480”)

  • 修复测试模型键级联(《53dd792”)

  • 修复具有唯一约束的模型的 update_collection(《900f3ec”)

0.5.27 版本发布于 2020-06-09

  • 正确处理 Sentry 过滤中缺少或空的配置键(《bfb413b”)

0.5.26 版本发布于 2020-06-09

  • 升级Sentry库并改进错误报告中敏感数据的过滤(5c0afad

  • 添加alembic辅助函数以处理常见任务(9440a4e

  • 要求数字列指定缩放和精度(d0e0260

  • 改进表单级别的错误处理(e590f2d

0.5.25版本发布于2020-05-12

  • 在CI中检查翻译(3a01a93

  • 添加GridView以方便Webgrid使用(a9deb06

  • 支持wtforms 2.3及以上版本(0d78557

  • 从非测试代码中移除pytest(5e11b79

0.5.24版本发布于2020-03-23

  • 为MultiCheckbox字段添加全选/全不选功能(vanilla JS)(7a727b6

0.5.23版本发布于2020-03-20

  • 启用bootstrap 3模板中对MultiCheckboxField的使用(c1dba1b

  • 修复SA箭头列默认时区问题(3eea89d

0.5.22版本发布于2020-02-27

  • 为复选框输入添加缺失的类(4b4e44c

0.5.21版本发布于2020-02-21

  • 添加对多选复选框表单字段的支撑(fa21fa4

  • 允许列覆盖它们的随机数据生成(a3445c1

0.5.20版本发布于2020-02-03

  • 修复BS4字段描述问题(a9d3479

0.5.19版本发布于2019-11-19

  • 添加美国州选择字段(3abd696

  • 为表单文本输入添加类型提示小部件(fe089e0

  • 使用推荐的类和标签布局渲染bootstrap 4复选框(d20b084

  • 添加Python 3.8支持并取消Python 3.5支持(d87b2db

  • 默认排除模型生成中的创建/更新时间戳字段(012fe38

0.5.18版本发布于2019-08-05

  • 防止模板宏中隐藏表单输入的双重渲染(e0b47dc

0.5.17版本发布于2019-07-29

  • 如果设置了默认值,则在表单生成期间跳过箭头字段(95e26a6

  • 添加bootstrap 4表单模板选项(bc4efcd

0.5.16版本发布于2019-07-09

  • db: 添加SoftDeleteMixin(ebc25b9

  • 启用表单字段的手动排序(#101)(00ce0b6

  • 合并pull request #103 from level12/pre-commit-hook-setup(68b92d6

0.5.15版本发布于2019-07-02

  • 为数据库实体使用的枚举类型添加基类(49e4cf3

  • 改进测试中对数字列测试默认值的随机数生成(25321c1

0.5.14版本发布于2019-06-28

  • 向表单的FieldMeta覆盖添加功能并改进对模型表单中枚举列的支持(c7ddf0d

  • 取消2.7支持并添加3.7支持(c7ddf0d

  • 修复拼写错误(be0334f

0.5.13版本发布于2019-06-17

  • 添加额外的测试助手并修复浮点字段表单生成问题(4b725fd

0.5.12版本发布于2019-02-07

  • 修复弃用警告并移除Wheelhouse(《7af6f55》)

0.5.11版本发布于2018-11-20

  • 将收益测试切换为循环以解决pytest警告(《a3e1b5c》)

0.5.10版本发布于2018-11-13

  • 添加了在创建wtforms时添加标签索引的模板支持(《f36997e》)

  • 在ColumnCheck中添加对多列键的支持(《8dc840b》)

  • 添加使用morphi的i18n可选支持(《46229a4》)

0.5.9版本发布于2018-09-19

  • 特性:向Form.fields_todict的结果添加额外元数据(《2f863f1》)

0.5.8版本发布于2018-07-19

  • 合并pull request #82,从level12/add-alphanumeric-validator(《bbf43ec》)

0.5.7版本发布于2018-06-19

  • 合并pull request #80,从level12/check-for-missing-app-ctx(《1d0f3d8》)

0.5.6版本发布于2018-04-30

  • 特性:自动为ModelForm中的数值字段生成范围验证器(《48a3827》)

  • 改进了唯一性表单验证器(《29937c5”)

0.5.5版本发布于2018-04-25

  • 特性:添加自定义Sentry客户端以过滤报告中的flask配置对象(《927e012”)

0.5.4版本发布于2017-08-08

  • 使用pyp管理发布(《5b11356”)

  • 特性:添加文件/流加密方法(《aeab61a”)

0.5.3 - 2017-04-26

  • 特性:添加DontCare以方便测试(《28643d6”)

0.5.2 - 2017-03-23

  • 特性:添加额外的实用函数(《2e27a60”)

  • BUG:在更新集合时检查所有记录(《fffb7c8”)

0.5.0 - 2016-12-19

  • 特性:创建加密原语(《5a981b5”)

  • 重构测试_create kwargs验证并忽略“_”前缀的键(《484d032”)

0.4.2 - 2016-11-11

  • 特性:验证kwargs是否对应于testing_create中的列和关系。(《db533dd”)

  • 特性:添加对表单级验证的支持。(GH-53)

0.4.1 - 2016-10-19

  • 添加唯一表单验证器(《a0c7447”)

0.4.0 - 2016-09-08

  • 特性:将MethodsMixin及其众多有助于与SQLAlchemy ORM实体一起工作的函数移植过来。(GH-49,GH-51)

  • 特性:添加新的时区列。(GH-50)

  • 维护:提供更好的测试支持,以支持多态SQLAlchemy ORM实体。(GH-47)

  • BUG:修复在隐式渲染复选框时的描述(《GH-48”)

0.3.2 - 2016-08-03

  • 支持表单对象上的dirty_check标志(GH-46)

0.3.1

  • 允许FieldMeta覆盖默认小部件并添加额外的验证器(GH-38)

  • 允许自定义输入、选择和单选字段上的只读和禁用属性(GH-37)

  • 改进将表单字段默认为RequiredBoolRadioField的逻辑(GH-36)

  • 升级CI环境

0.3.0

  • 允许使用自定义宏配置静态渲染。(GH-34)

  • 同步静态模板与动态模板。(GH-31)

  • 现在您可以使用字符串或回调函数为字段提供描述。(GH-23,GH-22)

  • 引入了RequiredBoolRadioField以用于布尔列。(GH-25)

  • 支持随机填充EmailTypes。(GH-24)

  • 支持随机整数额外的参数。(GH-19)

  • testing_create 将随机选择一个布尔值用于 SQLAlchemy 布尔字段。 (GH-28)

  • 现在我们有一个正在工作的 CI 系统。 (GH-27)

  • 如果所有字段都没有被覆盖,约束测试将失败。 (GH-21)

  • 引入了一个新的表单上传宏。 (GH-18)

  • 静态渲染现在使用 element.data,除非它是一个 SelectField (GH-16)

  • MethodsMixin 添加了一个新的 to_dict 方法。 (d83d93f)

  • MethodsMixin 添加了一个新的 ensure 方法。 (e5687ed)

  • 修复了一个问题,静态渲染不会输出标签。 (GH-33)

  • 修复了使用自动测试用例时属性名的问题。 (GH-29)

  • 修复了一个问题,我们不会使用一致的 JSON 解析器。 (GH-13)

  • 修复了一个问题,多态列被包含在 testing_create 中。 (147c23)

开发版本:2015-07-28

  • 添加了 db.mixins,包含 DefaultColsMixin(id,Arrow 库 UTC 时间戳)和 MethodsMixin(不完整)。

  • 一些 MethodsMixin 方法现在支持 commit/flush 参数。

  • 添加了 .testing:EntityBase,它使用命名元组声明所需的检查并添加了一些额外的逻辑。

项目详情


下载文件

下载适合您平台的项目文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

KegElements-0.12.0.tar.gz (94.3 kB 查看哈希值)

上传时间: 源代码

构建分发

KegElements-0.12.0-py2.py3-none-any.whl (101.4 kB 查看哈希值)

上传时间: Python 2 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面