我正在实施一个带有一些法语字符标签的博客。我的问题与如何处理url中的空格和unicode(utf-8)字符有关。
假设我有一个名为:ohlàlà的标签!我的标签云中有以下代码:
<%= link_to h(tag.name.capitalize), { :controller => :blog, :action => :tag, :id => h(tag.name) }, :class => css_class %>
我该如何处理这个问题?
答案 0 :(得分:1)
请参阅ToASCII and ToUnicode中的this Wikipedia article。我希望这篇文章有足够的指针来解决你的问题。
编辑:虽然它会讨论 Python ,但Unicode and permalinks可以提供有关如何对您的问题编码解决方案的想法。总结一下:
基本上,Unicode URL以UTF8编码,UTF8编码字符串的每个字节使用百分比编码进行编码。浏览器显然已经认识到了这种特定的编码方案(我没有在任何可以理解的情况下记录),并为用户显示了很好的国际化URL。
很抱歉,我不知道 Rails 是否有现成的功能来对这些网址进行编码。