Replaces special characters in a string so that it may be used as part of a
‘pretty’ URL.
Examples
class Persondef to_param"#{id}-#{name.parameterize}"endend@person=Person.find(1)# => #<Person id: 1, name: "Donald E. Knuth"><%= link_to(@person.name, person_path(@person)) %>
# =><ahref="/person/1-donald-e-knuth">DonaldE.Knuth</a>
# File activesupport/lib/active_support/inflector.rb, line 260
def parameterize(string, sep = '-')
# remove malformed utf8 characters
string = string.toutf8 unless string.is_utf8?
# replace accented chars with ther ascii equivalents
parameterized_string = transliterate(string)
# Turn unwanted chars into the seperator
parameterized_string.gsub!(/[^a-z0-9\-_]+/i, sep)
unless sep.blank?
re_sep = Regexp.escape(sep)
# No more than one of the separator in a row.
parameterized_string.gsub!(/#{re_sep}{2,}/, sep)
# Remove leading/trailing separator.
parameterized_string.gsub!(/^#{re_sep}|#{re_sep}$/i, '')
end
parameterized_string.downcase
end