首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >充当状态机循环

充当状态机循环
EN

Stack Overflow用户
提问于 2011-07-07 06:16:55
回答 1查看 410关注 0票数 1

在rails插件acts_as_state_machine的状态机中添加循环有什么问题吗?

我正在尝试做这样的事情,但没有起作用:

代码语言:javascript
复制
state :not_sent
state :sent

event :test do
 transitions :from => :not_sent, :to => :sent
 transitions :from => :sent, :to => :sent
end

我之所以这样做,是因为状态机用于电子邮件的状态。这里有我在这里展示的更多的状态,但出于实际原因,我只是显示了与循环有关的部分。

因此,现在,我想添加重新发送消息的可能性。所以我想在状态机中添加一个循环,但它不起作用。我试着添加新的状态"resend",只是为了调试的目的,它起作用了。但是我需要一些方法在状态机中创建一个循环。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-07 07:46:48

您实际上并没有循环任何东西,尽管看起来可能是这样的。如果你的开始和结束状态是相同的,你不是在进行转换,aasm将跳过它,IIRC。想要这样做的正常原因是重复一些作为转换的一部分的逻辑;在这种情况下,我会用一个方法调用替换转换,或者添加一个中间状态,如:resending,然后在重做您要做的工作后立即转换回sent状态。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6603724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档