acts_as_audited。 “コメント”を追加するにはどうすればよいですか?カラム
-
10-07-2019 - |
質問
アプリケーションでacts_as_audited gemを使用しています。 (モデルオブジェクトの変更を追跡する優れたgem)
テキストコメントと各監査レコードの関連付けをサポートするように依頼されました(svn commitと同様の機能)。そして、私はこれを達成する方法に困惑しています。
たとえば。住所フォームがあり、ユーザーが市と州を更新するとします。保存をクリックすると、コメントを入力するように求めます。作成された監査レコードに関連付けられたコメント情報が欲しい。
理にかなっていますか
ご協力ありがとうございます
ジョナサン
解決
これは便利だと思いました。そこで、自分でプラグインを分岐してパッチを適用しました。
編集フォークは、acts_as_auditedの公式リポジトリにマージされました。この投稿に含まれる使用法のドキュメントは、現在バニラacts_as_auditedに適用されます。この投稿のリンクをそこに向けて変更しました。私のアップストリームパッチは更新されないため、公式リポジトリを入手してください。機能強化を反映するために、この投稿の使用方法のドキュメントを更新しました。
プラグインとしてインストール:
rails_root$ script/plugin install git://github.com/collectiveidea/acts_as_audited.git
使用法は、実際にはバニラacts_as_auditedと変わりません。
acts_as_auditedは追加オプションを取ります。 :require_comment。trueの場合、コメントが提供されない限り、監査対象モデルの作成、更新、または破棄をブロックします。
監査にコメントを追加するには、作成/更新/破棄の前に model.audit_comment ="マイコメント"
を使用します。
audit_commentを一括で割り当てることもでき、任意のフォームにコメントフィールドを簡単に追加できます。
gem / pluginを使用する前に、監査テーブルを更新してコメント列を含める必要があります。 audit_as_auditedの古いバージョンからアップグレードし、監査テーブルにコメントフィールドがない場合は、プラグインを更新してから script / generate audited_migration_update update_audits_table
を実行します。そうでなければ、行くように設定されています。
gem / pluginを使用する場合、フォームにaudit_commentフィールドを追加するアドレスの例を使用して変更する必要があるすべて
<%form_for @address do |f| %>
... standard address fields
<%= f.label_for :audit_comment %>
<%= f.text_field :audit_comment %>
<% end %>