ruby gem acts_as_state_machine对于在灵活的有限状态机框架内对对象生命周期建模非常有帮助,但是我经常发现自己想要状态转换的可视化表示。有没有一个工具可以从一个acts_as_state_machine的现有ruby类生成一个FSM图(状态图流程图,状态/事件表,UML等)?
acts_as_state_machine
rpppsulh1#
state_machine gem(不要与acts_as_state_machine混淆)具有此功能。例如,从文档:
state_machine
$ rake state_machine:draw FILE=vehicle.rb CLASS=Vehicle
不再维护state_machine。它的fork state_machines已将图功能提取到单独的gem state_machines-graphviz中。安装该gem,然后运行重命名的rake任务:
state_machines
$ rake state_machines:draw FILE=vehicle.rb CLASS=Vehicle
6uxekuva2#
很晚才回复,但我使用的是AASM,我也遇到了同样的问题。忘了state_machine gem吧。它已经4年没有更新了,看起来也不会更新了。我发现对于AASM来说,最好的选择是下载OpenOffice并使用OpenOffice Draw工具来生成流程图。OpenOffice是免费的,而且非常容易使用。显然,如果AASM内部支持的话,效果会更好。不幸的是,它不是。
OpenOffice
OpenOffice Draw
0ejtzxu13#
https://github.com/padde/stateoscope gem与AASM gem(以前称为acts_as_state_machine)一起使用
vxqlmq5t4#
检查aasm-diagram gem,似乎较新。
4条答案
按热度按时间rpppsulh1#
state_machine
gem(不要与acts_as_state_machine
混淆)具有此功能。例如,从文档:
不再维护
state_machine
。它的forkstate_machines
已将图功能提取到单独的gem state_machines-graphviz中。安装该gem,然后运行重命名的rake任务:6uxekuva2#
很晚才回复,但我使用的是AASM,我也遇到了同样的问题。忘了
state_machine
gem吧。它已经4年没有更新了,看起来也不会更新了。我发现对于AASM来说,最好的选择是下载OpenOffice
并使用OpenOffice Draw
工具来生成流程图。OpenOffice
是免费的,而且非常容易使用。显然,如果AASM内部支持的话,效果会更好。不幸的是,它不是。
0ejtzxu13#
https://github.com/padde/stateoscope gem与AASM gem(以前称为acts_as_state_machine)一起使用
vxqlmq5t4#
检查aasm-diagram gem,似乎较新。