Sha256: 7e80993d5229a6134645fa3d82d88ddf61a658224f8e9d81f2cee89c2b2a7992
Contents?: true
Size: 794 Bytes
Versions: 41
Compression:
Stored size: 794 Bytes
Contents
# frozen_string_literal: true module Spree class Country < Spree::Base has_many :states, -> { order(:name) }, dependent: :destroy has_many :addresses, dependent: :nullify has_many :prices, class_name: "Spree::Price", foreign_key: "country_iso", primary_key: "iso" validates :name, :iso_name, presence: true self.allowed_ransackable_attributes = %w[name] def self.default find_by!(iso: Spree::Config.default_country_iso) end def self.available(restrict_to_zone: Spree::Config[:checkout_zone]) checkout_zone = Zone.find_by(name: restrict_to_zone) return checkout_zone.country_list if checkout_zone.try(:kind) == 'country' all end def <=>(other) name <=> other.name end def to_s name end end end
Version data entries
41 entries across 41 versions & 1 rubygems