on: create
Rails モデルに検証があります。その検証では、TransactionRecord
モデルのインスタンスを作成します。
ただし、TransactionRecord
親モデル (検証が実行されるモデル) が作成されたときにのみ永続化されるため、奇妙に思えます。
検証内で、TransactionRecord オブジェクトは肯定的に応答し.persisted?
ます。ただし、検証に失敗すると、TransactionRecord
オブジェクトは消えます。
「親」が保存されない場合、または検証が失敗した場合、検証で発生するすべてのdbトランザクションがロールバックされるのは、ActiveRecordの機能だと思います。
TransactionRecord
検証の結果に関係なく、モデルが確実に作成されるようにするにはどうすればよいですか?
ps
ほとんどのタイプのオブジェクトを作成するのにバリデーションが理想的な場所ではないことは承知しています。
編集
問題は解決しましたが、この問題の解決策がある場合は引き続き関心があります。