dgi*_*rez 5 translation routes internationalization ruby-on-rails-3
我正在尝试在Rails3.1应用程序中实现我的路由的完全国际化.我已经在使用Francesc Pla的rails-translate-routes来本地化路由动作和资源.最后一步是能够为我的一些模型转换slu ..
要翻译的路线:
http://myhost.com/products/pharmacy --> http://myhost.com/productos/farmacia
Run Code Online (Sandbox Code Playgroud)
我有一个表格的嵌套路线
# routes.rb
match 'products/:category_slug' => "products#index"
Run Code Online (Sandbox Code Playgroud)
我有一个带有实例的模型类别,#<Category id: 1, slug: "pharmacy">我find_by_slug在ProductsController中做类别.
有关如何翻译的任何想法都可以翻译:category_slug路线的一部分吗?
小智 0
据我所知,只要您使用正确的命名空间,您就可以直接从控制器调用翻译助手I18n。
所以你的 ProductsController 可能包含如下内容:
class ProductsController < ApplicationController
def index
i18n_slug = I18n.t("locale.category.#{params[:category_slug]}")
@category = Category.find_by_slug(i18n_slug)
end
end
Run Code Online (Sandbox Code Playgroud)
您可能应该告知自己将参数直接传递到翻译引擎的潜在安全风险,尽管我不知道有任何风险。如果它将在多个控制器操作中使用,您还可以考虑将其移至 before 过滤器或应用程序控制器中。
| 归档时间: |
|
| 查看次数: |
519 次 |
| 最近记录: |