データへの変更を監査するために紙の証跡を使用しており、paper_trailがデフォルトで保存する「whodunnit」列に加えて、現在のユーザーのuser_idを保存したいと思います。
バージョン移行を変更してuser_id列を追加することに問題はありませんでした。しかし、アプリのさまざまなモデルからその列を設定する簡単な方法がわかりませんでした。
これはうまくいくようです:
has_paper_trail :meta => { :user_id => current_user.id
}
そして、モデルのcurrent_userにアクセスできれば、うまくいくかもしれないと思います。しかし、私はしません。私のモデルでcurrent_userにアクセスする方法を調査した後、ここで哲学的な議論があることがわかりました。それは私の質問ではありません。
したがって、sentient_userやsentient_modelなどのgemを使用して、モデル内のcurrent_userにアクセスできるようにし、上記のコードのようなもので設定できるようにすることを考えています。
ただし、これらのgemを追加することは、私がここでやろうとしている小さなことには複雑に思えます。もっと簡単な方法があるのだろうかと思います。
アクションを実行した人のuser_idをバージョンテーブルに追加する最も簡単な方法は何ですか?