考虑到state_machine gem,如何选择给定状态之前的一组状态名称/符号?
可以说我有四种状态::pending
,:signature_needed
,:ordered
,:finalized
。假设从初始(:pending
)到最终(:finalized
)状态呈线性变化。
我将如何获得之前的所有状态:ordered
?我希望得到这样的结果[:pending, :signature_needed]
。
注:我刚刚意识到,试图找出为什么不提供这个功能,那以后state_machine
是目前不支持(因为我打算做一个PR是添加此功能)。
(当前未维护的)state_machine
gem中没有内置此类功能。由于它完全有可能用于非线性状态转换,因此准确地描述“哪个状态先于另一个状态”可能极其复杂且不可预测。因此,每个使用state_machine
gem的应用程序都需要创建自己的mixin来动态确定周期中哪些状态彼此前后。
功劳归功于OP下方的评论。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句