文件名称:ministry_of_state:现代ActiveRecord状态机插件
文件大小:13KB
文件格式:ZIP
更新时间:2024-05-26 08:29:42
Ruby
ministry_of_state 因为状态机很简单,所以它们不必大于2000行代码(和复杂度)。 功能 现在支持rails4。 无需更改。 将事件包装在事务中,并在进行状态更改之前锁定记录。 在进行状态更改时忽略脏属性。 这意味着与AASM不同,您不能将事件转换用作“保存”的简写。 事件和状态可以跨类继承。 简单的136行代码,覆盖了接近98%的测试覆盖率。 使用它 class User < ActiveRecord :: Base include MinistryOfState ministry_of_state ( 'status' ) do add_initial_state 'pending' add_state :active add_state :pending_payment add_event ( :activate
【文件预览】:
ministry_of_state-master
----.gitignore(446B)
----.document(55B)
----gemfiles()
--------Gemfile.rails-4.1.x(89B)
--------Gemfile.rails-4.0.x(89B)
--------Gemfile.rails-3.2.x(239B)
----.travis.yml(206B)
----LICENSE.txt(1KB)
----README.rdoc(2KB)
----lib()
--------ministry_of_state()
--------ministry_of_state.rb(143B)
----ministry_of_state.gemspec(1KB)
----Gemfile(40B)
----Rakefile(728B)
----test()
--------user.rb(648B)
--------test_ministry_of_state.rb(7KB)
--------student.rb(276B)
--------article.rb(138B)
--------cargo.rb(556B)
--------helper.rb(630B)
--------blog.rb(474B)
--------post.rb(738B)