問題タブ [acts-as-audited]
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 - 監査されたaudited_changesの混乱
レールでの監査にcollectiveideaの監査済みソリューションを使用しています。したがって、データベースにはTEXT定義である列(audited_changes)があります。データベースから監査を取得すると、プレーンな文字列が取得され、ビューでその属性を呼び出すと、フォーマットされていない文字列になります。rdocsには、すべての変更のシリアル化されたハッシュがあると書かれています。このハッシュを取得するにはどうすればよいですか?また、同じドキュメントでは、old_attributesとnew_attributesへのアクセスがあると書かれていますが、これはどうですか?
私からしてみれば:
または、これをフォーマットするチャンスはありますか?
ruby-on-rails - 最後に変更されたテーブル/レコードを表示するRails 3.2
私はこれの初心者なので、これを実装する方法をまだ理解できません。何人かが私を助けてくれて、audited を使わなければならないと言ってくれたので、そうしました。これは私のコントローラーです:
これが私のコントローラー全体のペーストです。http://pastie.org/4270702
しかし、これが正しいかどうか、またはこれを私の見解に実装する方法がわかりません。
今週はこれが本当に必要なので、誰かが本当に助けてくれることを願っています。
ありがとう。
コントラクトをデータベースに保存できる Rails アプリがあり、データベースには個人と工場のテーブルもあります。最後に変更されたテーブルが必要です。
人々がデータベースに新しいレコードを更新/追加すると、スクリーンショットのdivに変更が表示されるようになります。
ありがとう
ruby-on-rails - 監査済み、ユーザーに属する監査を検索
audited
というモデルの変更を追跡するために使用していPage
ます。特定のユーザーに関連付けられているすべての監査を検索できるようにしたいと考えています (user_id
監査テーブルを介して)。
どうやってやるの?Audit
これまでのところ、モデルにアクセスするために私が見つけた唯一の方法は次のとおりです。
それは物事を行う正しい方法だとは思えません。
しようと@audits = Audit.all
するとUninitialized constant
エラーになります。
gem が提供するモデルと対話するより優雅な方法はありますか?
html - ビューの監査済み変更を示すRails3.2エラー
奇妙な問題があります。契約ビューに次のコードがある場合、監査済みのgemがビューで機能しません。
次のエラーが発生します:undefined method
nil:NilClass`の監査'
ビューにこの行しかない場合: <p><%= @contracten.respond_to?(:audits) %></p>
trueではなくfalseが表示されるため、コントローラーが正しく機能していないと思います。
私のコントローラーショー:
私のモデル:
私はここに同様の質問を投稿しました:最後に変更されたテーブル/レコードRails 3.2を表示しますが、それは監査対象に固有のものではありません。私はそれのためのより単純な宝石を見つけられなかったので、これはうまくいくかもしれません。しかし、私はまだ景色に苦労しています
ruby-on-rails-3 - Rails 3 で Audit を使用すると、「初期化されていない定数 User::Audit」が表示されます
Rails 2アプリでacts_as_auditedを使用していましたが、Rails 3に更新中です。audited
代わりに呼び出すモデルをいくつか更新しましたがacts_as_audited
、それらは正常に機能しているようです。ただし、現在アプリのユーザー モデルを更新しており、(コンソールまたはアプリから) ユーザーを作成しようとすると、次のエラーが発生します。
関連すると思われる場所のトレースは次のとおりです。
私のコントローラーで問題を作成する行は、単に次のように述べています。
監査対象の github アカウントのサポート リストを調べましたが、私の問題に合ったものが見つかりません。誰かが同様の問題を抱えているかどうかを確認するために、ここで質問すると思いました。また、こことグーグルで検索して、この特定の質問に対する回答を見つけましたが、関連するものは見つかりませんでした。
何か案は?
ruby-on-rails - act_as_audited を rake タスクで使用できますか?
acts_as_audited
私のモデルでは問題なく動作しますが、XML ファイルをデータベースにインポートする rake タスクがあります。このタスクによって実行されるすべてのアクション (主に作成と更新) は、acts_as_audited によって取得されるわけではありません。Audit.as_user(User.current_user) do; ... ; end
rakeタスクファイルと実際のタスクを実行するクラスに追加した記録のために。
ruby-on-rails - 監査済み: nil:NilClass の未定義のメソッド「関連」
したがって、エントリを作成した最初の人にデフォルト設定したいEntry
という列を持つモデルがあります。監査済みをインストールしましたが、モデルには次のものがあります。created_by
User
Entry
同様に、私のUser
モデルには次のステートメントがあります。
私のエントリーフォームで、エントリーの最初の監査の関連ユーザーと等しくなるようhidden_field
に設定しようとしていたを作成しようとしていました。created_by
ただし、フォーム ビューを読み込もうとすると、次のエラーが発生します。
ビュー内のコードは次のとおりです。
ビューでentries_controller
設定したコードは次のとおりです。@entry
直観的には、まだ保存されていないため、新しい監査を作成する場合に @entry.audits を呼び出すのはあまり意味がありません。コントローラーのメソッドで@entry.created_by
呼び出した後に値を設定する必要がありますか? ここで取るべき最も実用的なアプローチが何であるかについてはよくわかりません。@entry.save
create
ありがとう、
マイケル。
ruby-on-rails - Rails - Audited でテナントを保存 (以前の act_as_audited)
私は監査済み(以前の act_as_audited)のセットアップと作業を行っています。user_id は監査テーブルに正常に保存されましたが、tenant_id を保存する効率的な方法がわかりません (スコープを使用してマルチテナンシーをセットアップしています)。README に記載されている Associated Audits テクニックを使用してみましたが、うまくいきません。
私の現在の解決策は、すべてのモデル (Rails の問題で実装可能) でafter_auditコールバックを使用して、最後の監査を取得し、tenant_id を保存することです。
これは機能しますが、監査を再度クエリしてから更新する必要があるのは非効率的です。保存する前に、監査に tenant_id を追加する方が理にかなっていますが、これを行う方法がわかりません。保存する前に、tenant_id を監査に追加することはできますか? はいの場合、どのように?
編集:
また、監査モデルに既定のテナント スコープを含めようとしましたが、呼び出されないようです。
audit.rb
application_controller.rb
編集: 2/1/16
私はまだこれに対する解決策を実装していませんが、私の現在の考えは使用することです:
このコードでは、現在のモデルの最後の監査を取得します。このように、現在のモデルのみを扱っているため、監査を別のビジネスに追加する可能性はありません (私が知る限り)。このコードを懸念事項に追加して、DRY に保ちます。
通常の Rails コールバックを Audit モデル内で動作させることはまだできません。現時点で私が目にする唯一の方法は、gem のソース コードをフォークして変更することです。