我正在实现一个带有一些法语字符标签的博客。我的问题与如何处理 url 中的空格和 unicode (utf-8) 字符有关。
假设我有一个名为:ohlàlà!我的标签云中有以下代码:
<%= link_to h(tag.name.capitalize), { :controller => :blog, :action => :tag, :id => h(tag.name) }, :class => css_class %>
我该如何处理这个问题?
我正在实现一个带有一些法语字符标签的博客。我的问题与如何处理 url 中的空格和 unicode (utf-8) 字符有关。
假设我有一个名为:ohlàlà!我的标签云中有以下代码:
<%= link_to h(tag.name.capitalize), { :controller => :blog, :action => :tag, :id => h(tag.name) }, :class => css_class %>
我该如何处理这个问题?
请参阅此 Wikipedia 文章中的ToASCII 和 ToUnicode。我希望这篇文章有足够的指针来解决你的问题。
编辑:虽然它会讲Python,但Unicode 和永久链接可以让您了解如何对您的问题的解决方案进行编码。总结一下:
基本上,Unicode URL 以 UTF8 编码,并且 UTF8 编码字符串的每个字节都使用百分比编码进行编码。浏览器显然识别出这种特定的编码方案(我可以在任何地方都没有记录)并为用户显示漂亮的国际化 URL。
抱歉,我不知道Rails是否有现成的函数来以这种方式对 URL 进行编码。