-3
モデルBにはモデルBが多く、モデルBには保存後に何か処理を行う方法があります。それをスキップする方法は?ファクトリーガールでオブジェクトを作成するときにモデルのメソッド(after_saveメソッド)をスキップする方法
モデルBにはモデルBが多く、モデルBには保存後に何か処理を行う方法があります。それをスキップする方法は?ファクトリーガールでオブジェクトを作成するときにモデルのメソッド(after_saveメソッド)をスキップする方法
factory_girlのafter(:build)
コールバックを使用してコールバックをスキップできます。
FactoryGirl.define do
factory :model_b do
after(:build) {|model_b| model_b.class.skip_callback(:save, :after, :your_callback)}
end
end
factory_girlのwikiは、ライブラリが提供するオプションの一部を使用する方法を示す素晴らしいexample fileを持っています。
[xy問題](https://meta.stackexchange.com/a/66378/284887)のように聞こえます。コードを共有して、コールバックをスキップする必要がある理由を教えてください。コールバックがコールバックではなく、代わりに明示的に呼び出されるメソッドであると私は感じます。テストするのが難しい場合は、設計したソフトウェアを変更する必要があるかもしれません。 – spickermann
"[ask]"と "[mcve]"を読んでください。もっと情報が必要です。 –