Sha256: d4867033fc8f820ed18440cd7f1ad332a452b47fea3a99e6e149a3c14d916f63
Contents?: true
Size: 893 Bytes
Versions: 37
Compression:
Stored size: 893 Bytes
Contents
# frozen_string_literal: true module ActiveRecord module AttributeMethods module Query extend ActiveSupport::Concern included do attribute_method_suffix "?" end def query_attribute(attr_name) value = self[attr_name] case value when true then true when false, nil then false else if !type_for_attribute(attr_name) { false } if Numeric === value || !value.match?(/[^0-9]/) !value.to_i.zero? else return false if ActiveModel::Type::Boolean::FALSE_VALUES.include?(value) !value.blank? end elsif value.respond_to?(:zero?) !value.zero? else !value.blank? end end end alias :attribute? :query_attribute private :attribute? end end end
Version data entries
37 entries across 37 versions & 4 rubygems