#model #mongo-db #macro #mango

metamorphose

将结构体转换为模型的宏集合,用于绿色桶项目

12个稳定版本

1.4.1 2023年8月15日
1.3.4-beta 2022年12月15日
1.3.1 2023年5月5日
1.2.1-beta 2022年11月27日
0.2.2-alpha.2 2020年11月21日

#813 in 过程宏

Download history 35/week @ 2024-07-06 414/week @ 2024-07-27

每月449次下载
用于 mango-panel

MIT/Apache

41KB
523

Logo

Metamorphose

将结构体转换为模型的宏集合,用于 绿色桶 项目。

crates.io crates.io Metamorphose on docs.rs crates.io crates.io

模型

将结构体转换为绿色桶模型的宏。模型可以访问数据库。模型可以在集合中创建、更新和删除文档。

要求

使用

遵循 Green Barrel 链接。

模型参数

(所有参数都是可选的)

参数 默认值 描述
db_query_docs_limit 1000 限制查询结果。
is_add_doc true 在数据库中创建文档。 false - 或者,使用它来验证Web表单中的数据。
is_up_doc true 更新数据库中的文档。
is_del_doc true 从数据库中删除文档。
ignore_fields 空字符串 不包含在数据库中的字段(用逗号分隔)。
is_use_addition false 允许执行额外操作和额外验证的方法。
is_use_hooks false 允许钩子方法 - impl Hooks for ModelName

变更日志

  • v1.4.0 重命名字段名 - 添加了 Field 字词。
  • v1.1.0 删除了12种类型的字段,剩余的字段已被重命名。请参阅文档 - https://docs.rs/green-barrel/latest/green_barrel/fields/index.html
  • v1.3.2-beta 修复了基本示例并更新了readme文件。
  • v1.3.0-beta 过渡到异步代码。
  • v1.2.0-beta 更新了依赖的mongodb到版本2。
  • v1.1.9-beta 更新了 README.md 文件。
  • v1.1.0-beta 增加了对 Fixtures 的支持 - 用于将预创建的数据填充到数据库中。
  • v1.0.0-beta green-barrel v0.x.xmetamorphose v0.x.x 不兼容。
  • v0.7.12 修复了 README.md 中的错误。
  • v0.7.8 修复了多选字段验证。
  • v0.7.0 为便于在管理面板中注册模型,增加了 Administrator 特性。
  • v0.6.10 增加了自定义网页表单 HTML 代码的能力。请参阅文档:mango_orm > widgets > generate_html_code > GenerateHtmlCode > generate_html()
  • v0.6.9 将特性 ToModel 重命名为 Main
  • v0.6.0 自动将 created_atupdated_at 字段添加到模型中。小部件类型为 inputDateTimedisabled = trueis_hide = true。更新了 README.md 和文档。
  • v0.5.4 修复了 ModelName::key() 方法。请参阅文档:mango_orm > models > ToModel
  • v0.5.2 优化了导入。
  • v0.5.0 增加了模型属性 is_use_hooks。请参阅文档:mango_orm > models > hooks > Hooks
  • v0.4.8 修复了错误信息文本。
  • v0.4.6 根据依赖项的版本进行更新。
  • v0.4.4 优化了验证机制。
  • v0.4.3 改进了 Slug 字段的验证。
  • v0.4.2 移除了 hiddenSlug 字段。
  • v0.4.1 为 Widgets 增加了 is_hide 参数。
  • v0.4 增加了 inputSlughiddenSlug 字段。
  • v0.3 移除了表单宏。

许可证

本项目遵循 MITApache Version 2.0 许可。

依赖关系

~28–40MB
~740K SLoC