ぼざクリタグ広場 https://hub.nizika.monster
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

20 lines
578 B

  1. module VersionRecord
  2. extend ActiveSupport::Concern
  3. def readonly? = persisted?
  4. included do
  5. belongs_to :created_by_user, class_name: 'User', optional: true
  6. enum :event_type, { create: 'create',
  7. update: 'update',
  8. discard: 'discard',
  9. restore: 'restore' }, prefix: true, validate: true
  10. validates :version_no, presence: true, numericality: { only_integer: true, greater_than: 0 }
  11. validates :event_type, presence: true
  12. scope :chronological, -> { order(:version_no, :id) }
  13. end
  14. end