修改了相应的代码格式和内容

This commit is contained in:
xiemengjun
2012-10-28 23:23:35 +08:00
parent 3014988d97
commit 3af17e4f0a

27
10.3.md
View File

@@ -1,29 +1,42 @@
# 10.3 国际化站点 # 10.3 国际化站点
前面小节介绍了如何处理本地化资源即Locale一个相应的配置文件那么如果处理多个的本地化资源呢而对于一些我们经常用到的例如简单的文本翻译、时间日期、数字等如果处理呢本小节将一一解决这些问题。 前面小节介绍了如何处理本地化资源即Locale一个相应的配置文件那么如果处理多个的本地化资源呢而对于一些我们经常用到的例如简单的文本翻译、时间日期、数字等如果处理呢本小节将一一解决这些问题。
## 管理多个本地包 ## 管理多个本地包
在我们开发一个应用的时候首先我们应该知道这个Web应用要支持多少个语言例如首先这个Web应用需要支持中文和英文也许以后会支持其他语言但是结构已经有了所以扩展非常容易。那么我们设计如下Locale文件夹在config/locales下假设你要支持中文和英语那么你需要在这个文件夹下放置en.json和zh.json。大概的内容如下所示 在我们开发一个应用的时候首先我们应该知道这个Web应用要支持多少个语言例如首先这个Web应用需要支持中文和英文也许以后会支持其他语言但是结构已经有了所以扩展非常容易。那么我们设计如下Locale文件夹在config/locales下假设你要支持中文和英语那么你需要在这个文件夹下放置en.json和zh.json。大概的内容如下所示
# zh.json # zh.json
zh: {
submit: '提交' "zh": {
create: '创建' "submit": "提交",
"create": "创建"
}
}
#en.json #en.json
en: {
submit: 'Submit' "en": {
create: 'Create' "submit": "Submit",
"create": "Create"
}
}
然后调用go-i18n包里面注册一下这个目录这样Go会加载config/locales目录下的locale文件 然后调用go-i18n包里面注册一下这个目录这样Go会加载config/locales目录下的locale文件
Tr:=i18n.NewLocale() Tr:=i18n.NewLocale()
Tr.LoadPath("config/locales") Tr.LoadPath("config/locales")
使用很简单,你可以通过下面的方式进行测试:
fmt.Println(Tr.Translate("submit"))
//输出Submit
Tr.SetLocale("zn")
fmt.Println(Tr.Translate("submit"))
//输出“递交”
## 自动加载本地包 ## 自动加载本地包
## template mapfunc ## template mapfunc
1. 文本信息 1. 文本信息