问题标签 [acts-as-state-machine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3680 浏览

ruby-on-rails - 使用 ruby​​ist-aasm 持久化状态列(充当状态机)

在使用 aasm 进行转换时将对象的状态保存到数据库的最佳方法是什么?我原以为这会自动发生,但事实并非如此。

(编辑:当我手动保存对象时,状态列确实会更新。但是在转换时不会保存。)

对于这个插件,我找不到太多有用的文档,因此,如果您有关于具有更好文档的替代有限状态机实现的建议,那也可能会有所帮助。

0 投票
1 回答
410 浏览

ruby-on-rails - 使用acts_as_state_machine 转换方法而不保存

我希望能够利用自动生成的acts_as_state_machine 转换方法(例如事件!).. 但我不希望它立即保存。我正在更新状态作为另一组操作的一部分,因此我不想进行双重保存。

有什么方法可以触发这些事件方法而无需立即保存?

0 投票
1 回答
314 浏览

ruby-on-rails - AASM:验证哪个对象正在向前移动状态

我正在使用来自http://elitists.textdriven.com/svn/plugins/acts_as_state_machine/trunk的 AASM

在我的示例中,我有一个 Karate dojo rails 站点。在该网站上,教师可以管理他们所教授的课程并将他们的学生转移到下一个逻辑带。

我的“学生”模型使用 AASM 进行传送带进度,它的定义如下:

...而教师模型是这样定义的...

有没有办法确保只有教师才能称呼“学生。毕业生!”?我见过“:guard”命令,但似乎我只能拥有检查当前对象(学生)的函数,而不是调用该函数的对象(教师)。

看来我无法向我的事件添加参数,例如......

...这将是理想的。

0 投票
1 回答
420 浏览

ruby-on-rails - 充当状态机循环

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

我正在尝试做这样的事情并且不工作:

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

所以现在,我想添加重新发送消息的可能性。所以我想在状态机中添加一个循环,但它不起作用。我尝试添加新状态“重新发送”,仅用于调试目的并且它有效。但是我需要一些方法来在状态机中创建一个循环。

0 投票
1 回答
440 浏览

ruby-on-rails - rails act_as_state_machine 没有方法错误

我在尝试按照此处的教程进行操作时遇到此错误

http://jimneath.org/2008/06/03/converting-videos-with-rails-converting-the-video.html

正如教程所说,我有一张名为视频的表格,需要字段,但是当试图在浏览器中获取索引时,我遇到了这个丑陋的错误。如何解决?谢谢。

VideosController#index 中的 NoMethodError

应用程序跟踪 | 框架跟踪 | 全跟踪

视频控制器

视频.rb

0 投票
1 回答
1493 浏览

ruby-on-rails - 如何在 Rails 的 aasm 回调中访问新旧状态?

我是 Ruby 和 Rails 的新手。

我正在使用 AASM 将状态机行为放入模型类中。根据新旧状态,我想以不同的方式处理状态更改事件。

我如何使用“to”和“from”状态作为参数调用“after”回调,或者如果它们有我需要的内容,如何访问 AASM 持有的内部字段?...还是我只需要在回调之前和之后都添加并将之前的状态保存在之前的回调中?

0 投票
2 回答
2670 浏览

ruby-on-rails - 如何将默认 AASM 状态添加到现有模型

我在 Rails 中有一个现有模型,我想向其中添加 AASM 状态。

根据我的理解,我应该首先通过迁移向我的数据库添加一个状态列,然后向我的 rails 模型添加一些状态。如何根据另一列中的值设置默认状态值?

我在正确的轨道上吗?

0 投票
3 回答
6525 浏览

ruby-on-rails - 带参数回调后的aasm

我在我的 rails 4 应用程序中使用aasm(以前的)gem。acts_as_state_machine我的Post模型上有这样的东西

当我调用@post.accept_approval!(:active, current_user)并且触发后回调时,在我的控制台中我可以检查什么user是(传递给 Proc)并且它是nil

这里发生了什么?调用此转换的正确方法是什么?

0 投票
1 回答
1402 浏览

ruby-on-rails - 在 Rails 中创建动态审批系统

我试图弄清楚如何在 Rails 中实现动态审批系统。场景是这样的:我有一个模型对象(一个文档),当创建它时,用户可以分配一个批准流。该文件可以由用户填写和提交。然后,该文档在“批准”之前经过批准流程。

例如,假设我创建了一个“请假请求”文档。作为用户,我可以声称请假请求必须得到我的直属经理和人力资源部人员的批准,然后才能处于“已批准”状态。

我已经探索过使用许多状态机 gem 和 CanCan 来获得权限,但我无法完全理解如何动态创建这些工作流。我考虑过序列化数据库中的工作流,但这意味着每次我想确定等待批准的文档的文档审批者列表时,我都必须反序列化处于“等待批准”状态的文档列表中的每个工作流。

有没有人对如何解决这个问题有任何想法?

0 投票
4 回答
1281 浏览

ruby - 为acts_as_state_machine生成状态转换图的工具

ruby gemacts_as_state_machine对在灵活的有限状态机框架内建模对象生命周期非常有帮助。但我经常发现自己想要状态转换的可视化表示。

是否有工具可以从现有的 ruby​​ 类生成 FSM 图(状态图流程图、状态/事件表、UML 等)acts_as_state_machine