[RubyonRails系列]4、专题:Rails应用的国际化i18n_第1页
[RubyonRails系列]4、专题:Rails应用的国际化i18n_第2页
[RubyonRails系列]4、专题:Rails应用的国际化i18n_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、RubyonRails系列4、专题:Rail应用的国际化i18ril1什么是internationalizatidni8n)?国际化,英文简称i18n,按照维基百科的定义:是指在设计软件,将软件与特定语言及地区的过程。当软件被到不同的语言及地区时,软件本身不用做内部工程上的改变或修正。当然,官方的定义总是十分高大上。实际上,今天我们要做的并没有那么复杂。任务是为上次的系列3里的eb站点提供多语言支持。比如上次是英语网站,这次我们可以根据用户地点自动提供中文网站或其他语言网站。2如何实现i18n?Stepl:登录Cloud9进入上次的开发环境cdfirstDemoStep2:准备多语言字典(lo

2、calematerial该网站提供了各种语言的locale模版,这里我们需要以下2个文件(当然如果你需要支持其他国家语言,还需要准备其他文件):1(英语版本)2(简体中文版本)Step3:编辑config/locales文件夹(1)如上图,在该文件夹下我们看到只有一个文件:en.ym,将其打开发现只有2行代码如下:en:hello:Helloworld这是一个ym文件模版,现在我们需要讲其换成上面的en.yml点击进入:打开文件,然后复制粘贴网页内容,将原来的en.ym文件内容覆盖注意点:正确的复制方法与错误的复制方法文件是通过ey-alu格式定义数据的文件,它是RubyonRail里的数据定

3、义文件,特点是空格敏感!错误的复制方法会忽略空格进而导致语法错误。因此这里的操作非常重要。正确的复制方法如上图,点击红色区域的按钮,进入新的页面,然后再进行复制,即可保留空格。如果直接在该页面复制,会忽略空格导致语法错误!Step3:编辑config/locales文件夹(2)en.ym搞定以后,在config/locales文件夹下新建文件:z.ym再将下的内容同样复制过去注意,z.ymt件第一行应将z(改成z(去掉一C)接下来:我们需要对以上2个文件(en.ym和z.yMl进行编辑,以适应我们的eb应用。对于en.yml我们需要在en:下一行,date:上一行区域输入以下代码(注意空格):

4、en:memotitle:yemopadso:Soedit:ditdestroy:estroylistmemo:istingmemosnew_memo:NewMemodate:对于y插入如下代码:eo_title我的记录sow展示eit编辑estro删除list_eo列表new_eo新建ate:2.5Step4修改view页面文件app/views/eos/in文件第.7terb将该行代码改为如下代码:tdlin_tot/veo/ttdlin_titteit_eo_pateotd%=link_toestroeoeto:eleteat_:reconfirs:re_/tr表达式该符号表明可在标记中

5、间插入rb语句输出该符号可将rb表达式的值转换成t输出结果t代表翻译函t数,是translate的简写形式。该函数将输出引号所对应的值(参考前面的文件键值对理解)2app/views/laots/application.文件第4行将改行改为下列代码:app/views/eos/ine文件第.eTb将改行改为下列代码:eo_title/4app/views/eos/ine.文件第27行将改行改为下列代码:lin_tonew_eonew_eo_pat2.67修改config/application文件取消第2行,第2行注释;并将改为confi将:改为:,并添加一行代码config.encoing,代码如下:config.inoa_patirails.cojoiocales.rb.to_sconfig.in.efalt_locale:config.encoingtf这样,页面的默认显示语言就变为中文。2.77修改app/controllers/application_control文件rb将文件代码改为以下代码:classpplicationontrollerctionontroller:aseprotect_froorgerbefore_filter:set_localedefset_localeI18n.locale=para_s:locale|I18n.default_local

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论