我有一个西班牙语网站,我需要将其精确复制成英文。但是,导航栏标签来自应用程序控制器,该控制器用于站点上的每个页面。
是否可以制作仅适用于西班牙语页面的应用程序布局,以及英语页面的第二个应用程序布局?我还需要一个ENG和SPA的链接,以便在每个版本之间进行更改。
总结一下:
答案 0 :(得分:1)
您可以在控制器上定义一个方法,该方法将根据所选语言或其他参数设置正确的布局。
class ApplicationController < ActionController::Base
layout :choose_layout
protected
def choose_layout
# replace this condition with your own
if spanish_layout?
"application_es"
else
"application_en"
end
end
end
预计您有两个文件app/views/layouts/application_es.*
和app/views/layouts/application_en.*
。当然,您可以不在ApplicationController
上定义此方法,而是在其他一些子控制器上定义。由你决定。