Module: PagesCore::HumanizableParam
- Extended by:
- ActiveSupport::Concern
- Includes:
- ActiveSupport::Inflector
- Defined in:
- app/models/concerns/pages_core/humanizable_param.rb
Instance Method Summary collapse
Instance Method Details
#humanized_param(slug) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/models/concerns/pages_core/humanizable_param.rb', line 8 def humanized_param(slug) return id.to_s unless slug&.present? "#{id}-" + transliterate(slug) .downcase .gsub(/[\[{]/, "(") .gsub(/}\]/, ")") .gsub(/[^[[:alnum:]]()-]+/, "-") .gsub(/-{2,}/, "-") .gsub(/(^-|-$)/, "") end |