問題タブ [paper-trail-gem]
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-on-rails - rails_admin paper_trail history でユーザーのカスタム ラベルを表示する
rails_adminの履歴ページに移動するpaper_trail
と、[ユーザー] 列にユーザー オブジェクトが表示されます ( #<User:0x007f59a9...
)。ユーザー属性の 1 つを使用するようにこれを構成する方法はありますか? 使えると思っobject_label_method
たのですが、運が悪いようです。
アップデート:
これは純粋に表示上の問題だと思っていましたが、paper_trail
実際には ID ではなくバージョン テーブル#<User:0x007f59a9...
の列のように文字列を格納しています。whodunnit
オーバーライドuser_for_paper_trail
しましApplicationController
たが、フロントエンド アプリではユーザー ID を使用してバージョンが正常にログに記録されますが、rails_admin ではログに記録されません。このスレッドによると、「RailsAdmin::ApplicationController は ::ApplicationController から継承する」ため、rails_admin は私のカスタム メソッドを参照する必要があります。なぜこれが起こっているのか、paper_trail
ユーザー ID を保存する方法について何か考えはありますか?
ruby-on-rails - Rails Papertrail - 最後の変更の責任者を表示する
私は Devise と Papertrail を使用しており、最新の更新を行ったユーザーを表示したいと考えています (ドキュメント リンク)。
コントローラーで:
ショーページで
ただし、結果としてエラーが発生します: undefined method `whodunnit' for nil:NilClass
in app/controllers/people_controller.rb:15:in `show'
どんな助けでも大歓迎です、ありがとう
ruby-on-rails-4 - papertrail 使用時の関連付け内の関連付けの回復
paper_trail での注意事項の 1 つは、関連付けの最初のレベルのみが回復されることです。これは、関連付け内に関連付けがある場合に問題になります。
私が持っている場合...
生徒を削除した場合student.versions.last.reify(:has_many => true)
、削除された出席と生徒を回復し、次にpointlog.version.last.reify
削除されたポイントログを個別に回復します
これはネストされたカスケード削除を回復するための最良の方法ですか、それとも paper_trail 内でこの警告に対処するためのより良い方法はありますか?
ruby-on-rails - Heroku の paper_trail で、コンソールの変更の責任者を自動的に設定する
paper_trailはうまく機能しています。しかし、Heroku のコンソールにログインしてからheroku run console
変更を加えると、変更元が設定されていません :(。したがって、paper_trail にはこのためのメカニズムがあります。
私の質問は、Heroku でこれをどのように自動化できるでしょうか? このようなことはありますか?
次に、それぞれがconsole.sh
個々のユーザー ID を使用して、上記のファイルを簡単に作成できます。または、これを自動化する別のメカニズムはありますか?
ruby-on-rails-3 - Paper Trail を使用して、現在のバージョンのモデルを更新したユーザーを見つける
私が取り組んでいるプロジェクトでは、Paper Trail gem を使用して、特定のモデルの以前のバージョンを保存しています。
これを使用して、モデルの更新間で何が変更され、誰が変更したかを示すモデル ビュー ページに監査履歴ページを表示しています。これは以前のバージョンでは問題なく機能していましたが、現在のバージョンのモデルを更新したのは誰かを示したいと思います。
モデルを現在の状態に更新した人を見つけるための whodunnit コマンドのバージョンはありますか?
私は、Paper Trail が現在のバージョンのどこかにそれを保存する必要があると考えました。そうしないと、次の更新で model.versions 配列がいつ読み込まれるかわかりません。
私は Stack Overflow で検索し、gems コードを調べ始めましたが、current_version の whodunnit を格納する方法を理解できませんでした。