Аудит с несколькими полями с помощью Ruby On Rails - PullRequest
0 голосов
/ 19 сентября 2018

Итак, я пытаюсь настроить аудит для модели в приложении rails, над которым я сейчас работаю.Как сейчас, я пытаюсь проверять 3 различных поля, когда они обновляются, но сохраняет только последний аудит.

class Employee < ApplicationRecord
  include Filterable

  monetize :salary_cents, :as => "salary"

  belongs_to :employee_status
  has_many :leave_balances
  has_many :leave_balance_histories
  has_many :emergency_contacts
  has_many :dependents
  has_one :onboarding
  has_many :employee_leave_policy_rels
  has_many :leave_policy_types, through: :employee_leave_policy_rels
  has_many :employee_trainings
  has_many :employee_benefits
  belongs_to :termination_type, optional: true

  #validates :status, :presence => true

  acts_as_birthday :birth_date

  audited

Я использую проверенную библиотеку для аудита.

этораскрывающиеся списки, которые я использую для получения комментариев к аудиту

<div class="dropdown col-xs-12 col-md-4" id="salary-audit-comment">
    <% reasons = AuditReason.order(:reason).pluck(:reason) %>
    <%= f.label :audit_comment, '*Salary Audit Reason', class: "control-label", style: 'color: red;' %>
    <%= f.select :audit_comment, reasons, {:include_blank => false, prompt: 'Select Reason'},
                 class: "form-control", id: "salary-audit-comment-select" %>
  </div>
  <div class="dropdown col-xs-12 col-md-4" id="title-audit-comment">
    <% reasons = AuditReason.order(:reason).pluck(:reason) %>
    <%= f.label :audit_comment, '*Title Audit Reason', class: "control-label", style: 'color: red;' %>
    <%= f.select :audit_comment, reasons, {:include_blank => false, prompt: 'Select Reason'},
                 class: "form-control", id: "title-audit-comment-select" %>
  </div>
  <div class="dropdown col-xs-12 col-md-4" id="status-audit-comment">
    <% reasons = AuditReason.order(:reason).pluck(:reason) %>
    <%= f.label :audit_comment, '*Status Audit Reason', class: "control-label", style: 'color: red;' %>
    <%= f.select :audit_comment, reasons, {:include_blank => false, prompt: 'Select Reason'},
                 class: "form-control", id: "status-audit-comment-select" %>
  </div>

Я хочу иметь возможность сохранить 3 отдельных аудита при сохранении формы или объединить все три комментария в один Audit_comment.

А идеи?

...