【发布时间】:2013-04-16 21:44:54
【问题描述】:
我正在创建一个可能有不同语言的社交应用。我不想遵循 Rails 手册中描述的模式,该模式为不同的语言使用不同的 URL 参数。例如:
http://example.com/pt/books
我想这样设置:
当用户进入站点(未注册)时,区域设置由浏览器语言配置文件自动定义。 (可能当前语言环境将保存在 cookie 中)。如果没有与浏览器语言匹配的语言,则默认为英语。
当用户填写注册表时,浏览器提供的当前语言会保存在数据库的users表中,所以即使浏览器的默认语言与登录用户的默认语言不同,最后一个将是主要语言。这次不会将语言环境保存在 cookie 中。
LOGGED 用户可以选择更改配置页面中的语言。这会影响数据库条目。
-
VISITOR 用户可以选择更改主页中的语言。这会影响 cookie。可能会有更改此选项的路线,例如:
http://example.com/changelanguage/en
那么,创建这样的东西最好和更简单的方法是什么?
【问题讨论】:
-
从开发人员的角度来看,这听起来很棒,但从 SEO 的角度来看,这是一个糟糕的想法。不遵循 url 结构将损害您的国际 SEO 努力。
标签: ruby-on-rails internationalization