完成了第二小节

This commit is contained in:
xiemengjun
2012-10-26 22:58:00 +08:00
parent be73adba30
commit 2f8f11316f
2 changed files with 48 additions and 4 deletions

41
10.2.md
View File

@@ -90,9 +90,44 @@
}
##本地化视图
我们在展现不同Locale的时候可能会根据不同的Locale采用不同的视图这些视图里面包含不同的图片、css、js等各种静态资源。那么我们如何来处理这些信息呢
##管理本地化资源
##本地化视图和资源
我们在展现不同Locale的时候可能会根据不同的Locale采用不同的视图这些视图里面包含不同的图片、css、js等各种静态资源。那么我们如何来处理这些信息呢首先我们需要组织对应的locale文件信息请看下面的文件目录安排
views
|--en //英文模板
|--images //存储图片信息
|--js //存储JS文件
|--css //存储css文件
index.tpl //用户首页
login.tpl //登陆首页
|--zh-CN //中文模板
|--images
|--js
|--css
index.tpl
login.tpl
有了这个文件安排之后我们就可以在渲染的地方这样来实现代码
s1, _ := template.ParseFiles("views"+lang+"index.tpl")
VV.Lang=lang
s1.Execute(os.Stdout, VV)
而对于里面的index.tpl里面的资源设置如下
//js文件
<script type="text/javascript" src="views/{{.VV.Lang}}/js/jquery/jquery-1.8.0.min.js"></script>
//css文件
<link href="views/{{.VV.Lang}}/css/bootstrap-responsive.min.css" rel="stylesheet">
//图片文件
<img src="views/{{.VV.Lang}}/images/btn.png">
这样我们在本地化视图以及资源的时候采用这种方式就可以很容易的进行扩展了。
##总结
本小节介绍了如何使用存储本地资源本地资源有些需要通过转换函数有些通过lang设置但是最后都是通过key-value的方式存储了相应的Locale对应数据然后通过转换函数通过key读取出来相应的Locale信息如果是文本信息就直接输出了如果是时间日期或者货币需要结合`fmt.Printf`函数的处理才能转换成正确的信息展示而对于不同Locale的视图和资源是最简单的只要在路径里面增加lang就可以实现了。
## links
* [目录](<preface.md>)
* 上一节: [设置默认地区](<10.1.md>)

11
10.3.md
View File

@@ -1,7 +1,16 @@
##10.3 国际化站点
前面小节介绍了如何处理本地化资源即Locale一个相应的配置文件那么如果处理多个的本地化资源呢而对于一些我们经常用到的例如简单的文本翻译、时间日期、数字等如果处理呢本小节将一一解决这些问题。
##管理多个本地包
##自动加载本地包
##template mapfunc
##template mapfunc
1. 文本信息
2. 时间日期
3. 数字
##总结
## links
* [目录](<preface.md>)
* 上一节: [本地化资源](<10.2.md>)