百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
W

workflow

> 编程语言
开源

基于有限状态机的 Ruby API,用于模拟工作流程

1.8K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

基于有限状态机的 Ruby API,用于模拟工作流程

:doctype: 书籍 :toc: 宏 :toclevels: 1 :sectlinks: :idprefix:

工作流程

图片:https://img.shields.io/gem/v/workflow.svg[link=https://rubygems.org/gems/workflow] 图片:https://github.com/geekq/workflow/actions/workflows/test.yml/badge.svg[link=https://github.com/geekq/workflow/actions/workflows/test.yml] 图片:https://codeclimate.com/github/geekq/workflow/badges/gpa.svg[link=https://codeclimate.com/github/geekq/workflow] 图片:https://codeclimate.com/github/geekq/workflow/badges/coverage.svg[link=https://codeclimate.com/github/geekq/workflow/coverage] 注意:您可以找到特定工作流程 rubygem 版本的文档 在 http://rubygems.org/gems/workflow 中选择版本(可选) 默认是最新版本),点击"文档"链接。在阅读时 GitHub.com, README 文件提到了即将发布的版本。 toc::[] 工作流程是什么?

工作流是一种受有限状态机启发的 API,用于模型和 与我们通常称为"工作流程"的内容进行交互。

许多业务模型往往涉及工作流程类的概念,而本库的目的是通过使用与状态机理论中相似的术语,尽可能清晰地表达这些概念。

因此,工作流程具有状态。它在任何时刻只能处于一个状态。当工作流程更改状态时,我们称之为转换。转换发生在事件上,因此事件会引发转换。此外,当事件触发时,还可以执行其他任意代码,我们称之为操作。因此,任何给定状态都有许多事件,状态中的任何事件都会引发转换到另一个状态,并可能导致执行代码(操作)。我们可以在状态进入和退出时进行钩入,还可以导致转换失败(保护措施),并且我们可以钩入任何出于任何原因发生的转换。

现在,这些都很复杂,但我们将通过一个真实的世界示例来逐步演示 API。假设我们正在模拟记者提交文章。一篇文章被编写后提交。一旦提交,它就需要审核。有人审核了该文章,然后接受或拒绝它。下面是一个示例:

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rubyaasmdslrubystate-machine

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言