# frozen_string_literal: true module C module Authorable extend ActiveSupport::Concern included do has_one :author_record, as: :authored, autosave: true, dependent: :destroy delegate :user, to: :author_record delegate :author, to: :author_record, allow_nil: true after_save :assign_author def assign_author create_author_record(user_id: $user_id) end end end end