原文出自: http://my.donews.com/woodstudio/
Ruby on Rails是一个很不错的web开发框架,不过由于目前其本身对国际化的支持较差,所以需要一些辅助的东西来解决国际化问题。
我最先使用的是一个叫localization的插件,这个插件的使用说明在Ruby on Rails官方的wiki上面有,这个插件使用比较简单,不过功能比较弱。
目前使用的是Ruby-GetText,这个插件功能强大,基于GNU的gettext,详细的使用说明在 http://manuals.rubyonrails.com/read/chapter/105 上面有写,我大概提一下要点:
首先要是Ruby on Rails支持UTF-8,通过将如下代码添加到environment.rb中:
$KCODE = ‘u’
require ‘jcode’
接着是安装Ruby-GetText,运行gem install gettext就可以了,如果是Windows平台就选2,否则选1。接着就是在项目根目录下面创建po目录,里面添加你需要Locale的名字作为子目录,比如en, zh_CN等。需要国际化的字符串都以_(”")来书写,比如想国际化“编辑”这个标签,就可以在视图的rhtml中使用_(”Edit”),这样在显示的时候会自动根据Locale来替换成相应的值。
接着在项目的rakefile里面如下内容:
desc “Create mo-files for L10n”
task :makemo do
GetText.create_mofiles(true, “po”, “locale”)
end
需要注意的是在上面给出的链接的那篇文章里面,还需要添加updatepo这样一个目标,不过这个目标在我这不起作用,总是出错,我的办法是下载那篇文章附带的代码: http://www.digitale-wertschoepfung.de/artikel/gettext/using-gettext-with-rails.tgz 。在里面的script目录下面有一个localize文件,把它拷贝到你的项目的script目录下面,然后运行ruby ./script/localize {文本域的名字}就可以从controllers, views中更新po数据,用Unicode编辑器(比如UltraEdit)修改各个po文件,然后运行rake makemo就可以了。关于如果修改application.rb及其他controller的代码,查看给出的链接。此时重新启动server,就可以查看效果了。
分享到:
相关推荐
### Ruby on Rails 指南 v5.0.1 中文版 #### Rails入门 - **前提条件**:为了能够顺利地开始Rails的学习之旅,读者需要具备一定的Ruby语言基础,并且对Web开发有一定的了解。 - **Rails是什么?**:Rails是一种...
这个“ruby on rails2.0本地安装包”适用于Windows和Linux操作系统,特别是针对网络速度较慢的用户设计,方便他们离线安装Rails 2.0.2版本。 在Rails 2.0版本中,有几个关键性的改进和特性: 1. **ActiveRecord**...
【Ruby on Rails 环境搭建】是开发者在进行Web应用程序开发时的首要步骤,尤其对于初学者至关重要。Ruby on Rails(简称RoR)是一个基于Ruby语言的开源Web开发框架,它采用MVC(Model-View-Controller)架构模式,...
在开始Ruby on Rails开发之前,你需要先在本地计算机上安装Ruby。你可以通过RubyInstaller(Windows)、RVM(Ruby Version Manager,跨平台)或rbenv(用于管理多个Ruby版本)来安装。安装时,请确保选择与Rails...
为了更好地处理国际化问题,Rails 2.1的迁移命令现在默认使用UTC时间。这意味着所有的数据库时间戳都将统一为UTC格式,避免了由于本地时区设置导致的时间不一致问题。 ##### 更好的缓存机制 Rails 2.1在缓存方面...
《Ruby On Rails》是Web开发领域中一个非常流行的开源框架,它基于Ruby编程语言,以其简洁、高效和可扩展性而受到开发者喜爱。本资源提供了《Ruby On Rails》的源码,供学习者深入理解其内部工作原理和设计模式。 ...
- **i18n**:版本为 0.4.2,用于处理国际化和本地化问题。 - **MySQL-Ruby**:版本为 2.8.2,提供 Ruby 对 MySQL 的支持。 - **Passenger**:版本为 3.0.11,作为 Web 服务器的插件,可以更高效地部署 Rails 应用...
Ruby是一种面向对象的编程语言,以其简洁和优雅的语法著称。...理解MVC模式对于开发高效、可维护的Web应用至关重要,而Ruby on Rails提供了一个强大且易于使用的工具集,使得这个过程变得更加简单。
Redmine是一款基于Ruby on Rails框架开发的开源项目管理工具,其设计目的是为了提供一个集成了问题跟踪、项目文档、时间追踪、版本控制以及多种项目的管理功能。作为一个Web应用程序,Redmine允许用户通过浏览器访问...
Ruby on Rails是一个强大的开源Web应用程序框架,它基于Ruby编程语言,采用MVC(模型-视图-控制器)架构模式。Vagrant则是一个流行的开发环境工具,它允许开发者创建和管理一致且可移植的工作环境。"ruby-on-rails-...
Ruby on Rails,简称Rails,是由David Heinemeier Hansson基于Ruby语言开发的一个开源Web应用程序框架。Rails遵循MVC(模型-视图-控制器)架构模式,致力于“约定优于配置”和“Don't Repeat Yourself”(DRY)的...
### Wrox Professional Ruby on Rails (Feb 2008) #### 概述 《Wrox Professional Ruby on Rails》是一本面向中级到高级Rails程序员的专业书籍。本书假设读者已经熟悉Ruby语言,并通过阅读入门级的Rails书籍或通过...
13. **Internationalization (i18n)**:Rails提供了强大的本地化支持,允许开发者轻松地为应用添加多语言功能。 14. **Deployment**:Rails应用的部署涉及到如Capistrano、Heroku、Docker等工具和技术,确保应用...
标题中的“friendly-locale”项目是一个专为Xamarin和.NET框架设计的轻量级、跨平台的国际化解决方案,它的设计灵感来源于Ruby on Rails的i18n(国际化)机制。这个项目的目的是简化移动应用和桌面应用的本地化过程...
综上所述,`weixin_rails_middleware` 是一款强大且易于使用的工具,能够帮助 Ruby on Rails 开发者无缝集成微信服务,实现各种定制化的微信功能,如自动回复、用户管理、消息推送等。通过深入理解其工作原理和使用...
### Ruby on Rails基础知识详解 #### 一、简介 在IT领域,Ruby on Rails(简称RoR或Rails)是一种流行的Web应用程序开发框架,基于Ruby语言。它遵循MVC(模型-视图-控制器)架构模式,使得开发高效且结构化。本篇文章旨在...
Rails是Ruby on Rails框架的简称,它是一种基于Ruby语言的开源Web开发框架,以其MVC(Model-View-Controller)架构模式和“约定优于配置”的原则而受到开发者喜爱。国际化(i18n,internationalization)是软件开发...
Rails的国际化(i18n)支持使得创建多语言应用变得简单,开发者可以轻松地为不同的地区提供本地化的用户体验。 从"programa-en-rails-master"这个文件名来看,这很可能是项目的主分支或源码仓库。在Rails项目中,...
在Ruby on Rails开发中,有时候我们可能需要使用非关系型数据库,例如MongoDB,而不仅仅是传统的SQL数据库。MongoMapper是一个非常流行的Ruby库,它为Ruby on Rails应用提供了与MongoDB集成的能力。本教程将详细讲解...