【问题标题】:Simple states in rails - state_machinerails 中的简单状态 - state_machine
【发布时间】:2012-12-13 22:12:04
【问题描述】:

我正在寻找关于在 Rails 中更改模型状态的简单方法的建议。例如,我希望用户能够通过下拉或比率按钮将他们的工作更改为以下之一:

工作状态

  1. 出价(初始状态)
  2. 进行中
  3. 完成

有没有一种简单的方法可以在 Rails 中编写它,或者有推荐的 gem?没有转换,用户应该能够从一种状态更改为其他两种状态中的任何一种,没有特定的顺序。

我查看了 state_machine,对于这样的事情似乎有点沉重。

【问题讨论】:

    标签: ruby-on-rails ruby state-machine states


    【解决方案1】:

    这将花费你 9 美元,但 Ryan Bates 不久前就这个主题做了一个截屏视频:http://railscasts.com/episodes/392-a-tour-of-state-machines

    值得一看。

    【讨论】:

    • 谢谢。刚看完(我是专业会员)。我可能会尝试最后一部分。仍然对如何使用下拉菜单或类似方法触发均匀更改感到困惑。
    • 我通常为此使用 gem simple_form,但这与状态机无关。下拉列表看起来像:<%= f.input :state, :collection => %w(bids in_progress complete) %>
    • 另外 - 如果想循环遍历状态(我正在为每个状态创建一个带有选项卡的索引),我将如何调用特定状态?我需要为此创建特殊范围吗?
    • 我还没有真正研究过,但我只是在模型中定义了一个常量。您也可以使用一些元编程来为每个状态创建范围。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    相关资源
    最近更新 更多