Sha256: ecf721716bc9bb814031c48ed6f90696ebbed82198b4876f02ab5479ce5df341

Contents?: true

Size: 567 Bytes

Versions: 1

Compression:

Stored size: 567 Bytes

Contents

module Addresses
  class Address < ActiveRecord::Base
    attr_accessor :state_id

    belongs_to :city
    belongs_to :neighborhood
    belongs_to :addressable, polymorphic: true

    validates :zipcode, :number, :city_id, :state_id, presence: true

    after_find :set_state_id
    before_validation :set_state_id

    def to_s
      "#{self.street}, #{self.number}, #{self.neighborhood.name}. #{self.city.name} - #{self.city.state.acronym}"
    end

    private
    def set_state_id
      self.state_id = self.city.state.id unless self.city.nil?
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
addresses-1.0.0 app/models/addresses/address.rb