Ash Framework 2.0 已正式发布。
Ash Framework 是用于构建 Elixir 应用程序的声明式、面向资源和可扩展的框架。在 Ash 中,资源可以对任何东西提供模型,如数据库表、外部 API,甚至是自定义代码。
Ash 提供了丰富而广泛的工具集,用于与这些资源进行交互,并基于这些资源进行构建。通过为应用程序提供一组资源作为模型,其他工具就能准确地知道如何使用它们,从而使 AshGraphql 和 AshJsonApi 这样的扩展能够以最小的配置提供顶级的 API。
通过过滤 / 排序 / 分页 / 计算 / 聚合、pub/sub、策略授权等内置功能,以及一套全面的工具,Ash 支持构建自己的扩展,具有无穷可能性。
Ash Framework 2.0
随着 Ash 2.0 的到来,AshPostgres
, AshPhoenix
和AshArchival
软件包也推出了 1.0 正式版本。团队称AshGraphql
是下一个发布 1.0 的软件包,预计在未来几周内推出。
扩展状态(1.0+ 版本)
AshPostgres
- 支持使用 postgres 备份资源,具有丰富的查询能力,支持聚合、计算、分片。附带的迁移生成器可在记录时间内启动并运行。AshPhoenix
- 帮助整合 Ash Resources 与 Phoenix。诸如AshPhoenix.Form
此类的工具可用于在资源上构建表单,并使用一种数据结构管理复杂的嵌套相关数据。AshArchival
- 一个小而强大的扩展,使用一行代码获取存档。
未发布的扩展
AshPaperTrail
- 创建和管理资源的版本表,并将所有更改写入该版本资源。AshJsonApiWrapper
- 通过 finch 和配置使用外部 API 支持资源,用于描述资源如何映射到来自外部服务的响应。
详情查看发布公告。