论坛首页 编程语言技术论坛

activescaffold+rails2.3.4+本地化 记录

浏览 2348 次
精华帖 (0) :: 良好帖 (8) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-10-10  

这两天把原有一个项目从rails 2.2.2升级到了rails 2.3.4,在activescaffold插件上耗费了许多时间,但总算都解决了。
1.升级activescaffold
  首先要说明的是AS的官网很是诡异。里面的文档几乎不更新,反而github wiki上才是最新的。所以大家不要找错地方了。
   按照文档,升级AS到2.3版本需要以下两步:
   1). ruby script/plugin install git://github.com/activescaffold/active_scaffold.git
   2). ruby script/plugin install git://github.com/ewildgoose/render_component.git -r rails-2.3

  但是注意: 第二步安装的render_component插件在rails 2.3.4上并不能使用。启动时会出现 无效的方法"set_session_options"的错误。我最后是在github上找了另一个render_component插件才好的。在这里浪费了我至少2个小时。

   2). ruby script/plugin install git://github.com/weplay/render_component.git

2.中文化

  原来我使用的是localization插件。并在Object类中加入了as_()方法来实现中文化。可是此插件在rails 2.3.4中也会报错。于是我就直接采用rails自带的I18n国际化方法。当然还是需要加入as_()方法.代码如下

 

class Object
  def as_(string, *args)
    if string
      r = I18n.t(string,*args)
      if (r =~ /^translation missing/)
        return string
      end
      return r
    else
      return string
    end
  rescue
    return string
  end
end
 

   附上翻译文件:

 

 

论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics