問題タブ [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 - ネストされたルート リソースを既存のすべてのルートに追加する方法
paper_trail という優れた gem を使用しています。リソースのバージョンを一覧表示する「履歴」というページを作成しました。私のルートファイルには、すべてのルートのネストされたリソースがあります...これはまったくDRYではありません。
このルートは users/1/history を提供します
今、私は会社/1/歴史を持っています
/history を、すべてのリソースのネストされた履歴パスでルート ファイルを埋めずに、すべてのルートのネストされたルートとして機能させるにはどうすればよいですか?
ruby-on-rails - papertrail で特定の属性が変更されたバージョンを見つける
私は自分のプロジェクトでPapertrail gemを使用しており、次のことを行う方法を見つけるために広範囲に検索しました。
私がやりたいことは、特定の属性が特定の値になったオブジェクトのバージョンを見つけることです。
object.versions.where(attribute: "value")
これが Papertrail でも可能かどうかは誰にもわかりませんか?
ruby-on-rails-4 - 関連データのRuby's Paper Trail拡張
私は自分の Ruby プロジェクトで airblade Paper Trail gem を使用しています。バージョン管理履歴よりも、いつ何が起こったかの履歴として使用しようとしています。つまり、バージョン履歴からデータを再作成しようとはしません。レコードの存続期間中に何が起こったかをユーザーに伝えるために使用する人が増えています。
カスタム ダンパーまたはフックをモデルに追加して、company_id などの関連付けを意味のある値 (会社名など) にトラバースできるようにする方法はありますか。
ID を介して製品に関連付けられている属性「name」を持つモデル Company を取り上げます。
製品が更新されると、company_id がバージョン履歴に保存されます。私がやりたいのは、保存する直前に関係をたどって会社名を取得することです。
コードで「ダンプ」への呼び出しへの参照を見つけましたが、「ダンプ」に正しく応答するようにモデルを拡張するにはどうすればよいか疑問に思っています。
ruby-on-rails - paper_trail でオブジェクト ビューを変更する方法
開発中のアプリケーションの監査に paper_trail gem を使用しました。ほとんどの機能を管理でき、バージョン テーブルのデータをユーザーに表示できました。そうすることで、バージョンテーブルのオブジェクト属性のデータは、なんとなく読めなくなります。どうすれば読めるようになりますか?object 属性のサンプル出力は
version.object
次のとおりです。単一のセルで次の形式で取得します。
ruby-on-rails - RVM で Ruby 2.1.2 にアップグレードした後の PaperTrail (paper_trail) エラー。初期化されていない定数 PaperTrail::Rails::Engine
からアップグレードしようとしていますRuby 1.9.3 to Ruby 2.1.2 (Rails 4.0)
。RVMを使用しています。
Ruby 2.1.2 をインストールし、指定を含めて Gemfile を更新し、"gem 'paper_trail', '~> 3.0.5'"
RVM で Ruby 2.1.2 に切り替え、新しい gemset を作成し、それに切り替えました。
次に、バンドルのインストールを行いました。
Rails サーバーを実行しようとすると、次のエラーが表示されます。
/Users/sjohnson/my_app/config/initializers/paper_trail.rb:2:in
<top (required)>': uninitialized constant PaperTrail::Rails::Engine (NameError) from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/zeus-0.13.3/lib/zeus/load_tracking.rb:50:in
load' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/zeus-0.13.3/lib/zeus /load_tracking.rb:50:inload' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/zeus-0.13.3/lib/zeus/load_tracking.rb:43:in
load' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/engine.rb:609:inblock (2 levels) in <class:Engine>' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/engine.rb:608:in
each' /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/engine.rb:608:inblock in <class:Engine>' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:30:in
instance_exec から /Users/sjohnson/.rvm/gems から/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:30:/Users/sjohnson/.rvm/rubies/ruby-2.1.2/librun' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:55:in
の run_initializers のブロック内/Ruby/2.1.0/tsort.rb:226:/Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rbblock in tsort_each' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:348:in
の each_strongly_connected_component 内のブロック (2 レベル) :418:インチblock (2 levels) in each_strongly_connected_component_from' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:427:in
/Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:417:in each' からの each_strongly_connected_component_from' /Users/sjohnson/.rvm/gems/ruby-2.1block in each_strongly_connected_component_from' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:44:in
からの.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:44:intsort_each_child' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:411:in
call' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0 /tsort.rb:411:/Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in calleach_strongly_connected_component_from' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:347:in
' からの each_strongly_connected_component 内each' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in
' /Users/ sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:ineach_strongly_connected_component' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:224:in
tsort_each' from /Users/sjohnson/.rvm/rubies/ruby-2.1.2/lib/ruby /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/application.rb:215 の /2.1.0/tsort.rb:205:intsort_each' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/initializable.rb:54:in
run_initializers' :のinitialize!' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/railties-4.0.5/lib/rails/railtie/configurable.rb:30:in
/Users/sjohnson/my_app/config/environment.rb の method_missing:5:<top (required)>' from /Users/sjohnson/my_app/spec/spec_helper.rb:10:in
require で /Users/sjohnson/my_app/spec/spec_helper.rb:10:require<top (required)>' from /Users/sjohnson/my_app/spec/api/v1/api_authentication_spec.rb:1:in
で /Users/sjohnson/my_app/spec/ からapi/v1/api_authentication_spec.rb:1:in<top (required)>' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/configuration.rb:1057:in
load' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/configuration. rb:1057:inblock in load_spec_files' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/configuration.rb:1057:in
each' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/configuration.rb:1057:inload_spec_files' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/runner.rb:97:in
setup ' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/runner.rb:85:inrun' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/runner.rb:70:in
run' from /Users/sjohnson /.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/lib/rspec/core/runner.rb:38:ininvoke' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/gems/rspec-core-3.0.3/exe/rspec:4:in
' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/bin/rspec:23:inload' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/bin/rspec:23:in
' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/bin/ruby_executable_hooks :15:ineval' from /Users/sjohnson/.rvm/gems/ruby-2.1.2@rails4/bin/ruby_executable_hooks:15:in
'実行しようとしました: bundle exec rails generate paper_trail:install
移行ファイルが既に存在することを示していました (PaperTrail は 1.9.3 で動作していました)。それで、もう一度実行しました: bundle exec rails generate paper_trail:install -s
正常に完了しましたが、同じ問題があります。
config/initializers/paper_trail.rb:
アイデア?役立つその他の情報はありますか?
編集: 初期化ファイル内の paper_trail 3.0.3 への参照にもかかわらず、gem はバージョン 3.0.5 です (gem リストを実行して確認)。エラー トレース内の 3.0.3 への参照は、Rspec 用です。
ruby-on-rails - paper_trail での has_one の変更に関するバージョンの作成
私は属している / has_one 関係を持っており、paper_trail gem で追跡/バージョン管理を行っています。has_one モデルの属性を変更すると、バージョンは belongs_to 側で作成されますが、変更を行った側では作成されません。
例を挙げると: 生徒 has_one ロッカー ロッカー所属 生徒
私はこの関係を両側から編集できますが、現在、ロッカー側 (最後にロッカーを使用した学生) のみをバージョン管理できます。反対の履歴も必要です - 学生が使用したロッカー.
もちろん、更新を押すたびにバージョンが作成されるのであれば、これはまったく問題ありませんが、paper_trail はスマートであり、属性が実際に変更された場合にのみバージョンを作成します。ロッカー関係が学生モデルにないため、バージョンは作成されません (ただし、追加情報を保存するために独自のメタ情報属性を作成しました)。
それで、これを行う方法はありますか、それは醜いものではありません:)醜い)
どうも