Sha256: 7081092b4e3c75f7ee9e1a6905b9928ae5c3cdd034f8faae1f0954bd4179def3

Contents?: true

Size: 656 Bytes

Versions: 1

Compression:

Stored size: 656 Bytes

Contents

require_dependency "renalware/directory"

module Renalware
  module Directory
    class Person < ApplicationRecord
      include Personable
      include Accountable

      has_one :address, as: :addressable

      accepts_nested_attributes_for :address

      scope :ordered, -> { order(:family_name, :given_name) }
      scope :with_address, -> { includes(:address) }

      def self.policy_class
        BasePolicy
      end

      def self.build(attributes = {})
        person = self.new(attributes)
        person.build_address
        person
      end

      def to_s
        [family_name, given_name].compact.join(", ")
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
renalware-core-2.0.0.pre.beta4 app/models/renalware/directory/person.rb