問題タブ [aasm]
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.
ruby - AASM: ステート マシン定義をクラス定義から分離する
このクラスがあるとします (aasm のドキュメントから直接取得):
ステート マシンの定義がクラス定義と混在しているという事実はあまり好きではありません (もちろん、実際のプロジェクトでは Job クラスにさらにメソッドを追加するため)。
Job クラスが次のようなものになるように、ステート マシンの定義をモジュールに分けたいと思います。
次に、 app/models/state_machines に次のような内容の job_state_machine.rb ファイルを作成しました。
しかし、AASMはJobクラスではなくモジュールに含まれているため、これは機能しません...モジュールを次のように変更しようとしました:
しかし、まだ機能していません...ヒントや提案は大歓迎です。
ありがとう、イグナツィオ
編集:
Alto のおかげで、正しい解決策は次のとおりです。
そして明らかに、次のようにメイン クラスにステート マシンの定義を含めることを忘れないでください。
ruby - AASM を使用してステート マシンでステートをスキップする方法
ruby AASM gem を使用しています。
状態をスキップする正しい方法を知っている人はいますか?
AASM でこれを設定する最良の方法は何ですか?
このコードを一連の resque ジョブで使用しているため、stage1 は resque ジョブであり、状態を更新して次の resque ジョブを開始します。ステージ 2、次にステージ 3 も同様
ruby-on-rails - コントローラーから AASM でトランジションを実行するにはどうすればよいですか?
その名前を使用して AASM でトランジションを安全に実行することは可能ですか?
AASM で現在行っていること:
でできたことstate_machine
ruby-on-rails - イベントに渡された引数をaasmでエラーブロックに渡す方法は?
私のイベントは次のように定義されています。
と私は呼んでいmy_instance.share(message, tags)
ます。トランジションが許可されていれば、 andで呼び出すinc_in_path_share
のに問題はありません。しかし、トランジションが許可されていない場合、ブロック内でデフォルトのアクションを処理したいと考えています。message
tags
inc_share
error
メッセージとタグをerror
ブロックに渡す方法は? 私が考えている方法も最善ではないかもしれません(XY問題)。ありがとう !