class Stringex::Configuration::ActsAsUrl
Public Class Methods
Source
# File lib/stringex/configuration/acts_as_url.rb 32 def self.default_settings 33 @default_settings ||= { 34 allow_duplicates: false, 35 callback_method: :before_validation, 36 duplicate_count_separator: "-", 37 enforce_uniqueness_on_sti_base_class: false, 38 only_when_blank: false, 39 scope_for_url: nil, 40 sync_url: false, 41 url_attribute: "url", 42 blacklist: %w[new], 43 blacklist_policy: lambda { |instance, url| 44 "#{url}-#{instance.class.to_s.downcase}" 45 } 46 }.merge(Stringex::Configuration::StringExtensions.new.default_settings) 47 end
Source
# File lib/stringex/configuration/acts_as_url.rb 4 def initialize(options = {}) 5 if options[:scope] 6 options[:scope_for_url] = options.delete(:scope) 7 end 8 super 9 end
Calls superclass method
Source
# File lib/stringex/configuration/acts_as_url.rb 22 def self.settings 23 @settings 24 end
Public Instance Methods
Source
# File lib/stringex/configuration/acts_as_url.rb 11 def string_extensions_settings 12 [ 13 :allow_slash, 14 :exclude, 15 :force_downcase, 16 :limit, 17 :replace_whitespace_with, 18 :truncate_words 19 ].inject(Hash.new){|m, x| m[x] = settings.send(x); m} 20 end
Private Instance Methods
Source
# File lib/stringex/configuration/acts_as_url.rb 28 def default_settings 29 self.class.default_settings 30 end