コールバックをスキップします。具体的には、on
構文を使用してメソッドのリストを明示的に指定せずにオブジェクトを送信してください。私。以下のようなもの:レールを破棄するときにafter_commitをスキップ
after_commit :foo, except: [:destroy]
コールバックをスキップします。具体的には、on
構文を使用してメソッドのリストを明示的に指定せずにオブジェクトを送信してください。私。以下のようなもの:レールを破棄するときにafter_commitをスキップ
after_commit :foo, except: [:destroy]
最短ソリューションによって共有される1つです@dimid、しかし私は信じています。現実的なアプローチは、あなたが処理したいイベントをリストし、ちょうど残しておきます。:destroy
。現在、:on
オプションが3つあります。:create
,:update
、:destroy
です。
after_create_commit :foo after_update_commit :foo
:
after_commit :foo, :on => [:create, :update]
代わり::へ
after_commit :foo, on: :create after_commit :foo, on: :update
またはレール5(https://github.com/rails/rails/pull/22516)ので、それも可能です作成&更新にfoo
を実行するには
downvoters、説明に気を付けろ? – dimid