class Stringex::Configuration::ActsAsUrl
Public Class Methods
new(options = {})
click to toggle source
Calls superclass method
# File lib/stringex/configuration/acts_as_url.rb, line 4 def initialize(options = {}) if options[:scope] options[:scope_for_url] = options.delete(:scope) end super end
settings()
click to toggle source
# File lib/stringex/configuration/acts_as_url.rb, line 22 def self.settings @settings end
Private Class Methods
default_settings()
click to toggle source
# File lib/stringex/configuration/acts_as_url.rb, line 32 def self.default_settings @default_settings ||= { allow_duplicates: false, callback_method: :before_validation, duplicate_count_separator: "-", enforce_uniqueness_on_sti_base_class: false, only_when_blank: false, scope_for_url: nil, sync_url: false, url_attribute: "url", blacklist: %w[new], blacklist_policy: lambda { |instance, url| "#{url}-#{instance.class.to_s.downcase}" } }.merge(Stringex::Configuration::StringExtensions.new.default_settings) end
Public Instance Methods
string_extensions_settings()
click to toggle source
# File lib/stringex/configuration/acts_as_url.rb, line 11 def string_extensions_settings [ :allow_slash, :exclude, :force_downcase, :limit, :replace_whitespace_with, :truncate_words ].inject(Hash.new){|m, x| m[x] = settings.send(x); m} end
Private Instance Methods
default_settings()
click to toggle source
# File lib/stringex/configuration/acts_as_url.rb, line 28 def default_settings self.class.default_settings end