道喜技术日记 .^. 天天红玉世界

Rails Ruby MacOSX 。。。创新来自于刻苦的实践和勤奋的思考... www.hhtong.com


Rails世界:Rails第四版翻译思考(四)

Gudao Luo2011-07-26 at 16:31发表的

  • 原文
    • But Isn’t SQL Dirty?
    • It was built on the notion that SQL is neither dirty nor bad, just verbose in the trivial cases.
  • 翻译
    • SQL语句是灰色的吗?
    • 它(Active Record)当时是以这一概念建立起来的,即SQL语言既不是灰色的也不是有缺陷的,只是很简单的SQL查询有点累赘。
道喜评论:

  先理解一下,什么是“灰色收入”?存在似乎还有一定的合理性和现实性的收入。从真正意义上说,这种收入是不合理甚至是不合法的。

  当然在计算机科学中,灰色(Dirty)既不是说“合理”也不是“合法”的问题,而是通过一种"不寻常"的方法达到处理数据的目的。

  例如,类对象的内存地址是确定的。要是修改了该对象属性内容。参见: What’s New in Edge Rails: Dirty Objects 。该对象的内容被修改了,但其内存地址还是保持不变。在早期的Rails版本中,进行这样的修改是无法知晓的,该对象可称之为灰色对象(Dirty Objects)。

  修改类对象的属性肯定是可以的。但是问题是在Rails早期版本中,不知道曾经修改了该对象。之后的Rails版本,就可以知道是否修改了该对象。这样就有了一个认知修改的方法。这是一个从灰色走向白色的过程。

Ruby世界:汉字转换成拼音

Gudao Luo2011-07-25 at 21:31发表的

2011-07-25 hz2py

苹果世界:学习中文

Gudao Luo2011-07-17 at 14:02发表的

2011-07-17-learn-cn

Rails2.2世界:国际化功能问与答(五)

Gudao Luo2008-12-28 at 15:02发表的

国际化功能问与答(五)
* 本地化问题(五):如何对模型进行本地化?
模型文件代码
# db/migrate/20081115224456_create_posts.rb
class CreatePosts < ActiveRecord::Migration
def self.up
create_table :posts do |t|
t.string :title
t.text :body
t.boolean :published t.timestamps
end
end
针对模型的本地化文件
# config/locales/zh-CN.yml
# I18n.locale="zh-CN"
# I18n.translate 'activerecord.models.post'
# I18n.translate 'activerecord.attributes'
# I18n.translate 'activerecord.attributes.post'
# I18n.translate 'activerecord.attributes.post.title'
zh-CN:
activerecord:
models:
post: 帖子
attributes:
post:
title: 标题
body: 内容
published: 发布时间

Rails2.2世界:国际化功能问与答(四)

Gudao Luo2008-12-13 at 10:04发表的

国际化功能问与答(四)
  • 本地化问题(四):本地化工作方法
    • 重新载入本地化文件命令:
      I18n.reload!
    • 设置当前本地化语言
      I18n.locale = “zh-CN”
    • 查看当前本地化语言
      I18n.locale
    • 查看本地化内容信息
      I18n.t “time.formats”
    • 简化本地化函数方法
简化本地化函数方法
class String
def t(locale="zh-CN")
I18n.t self.to_sym, :locale => locale
end
end
"hello".t
"hello".t "en"

图书世界:免费的RJS教程

Gudao Luo2008-12-03 at 14:57发表的

免费的RJS教程
  • 说明
    • RJS教程是使用早期的Rails版本为基础的
    • RJS中文教程不是完整的翻译版本
    • 谁来着手以Rails 2.2版本重新写该教程的命令?

Rails2.2世界:国际化功能问与答(二)

Gudao Luo2008-11-28 at 23:50发表的

国际化功能问与答(二)
  • 国际化功能问与答(二):用户定义本地化文件
1. 如何确定自己软件的本地化默认语言?
vi config/environment.rb
config.i18n.default_locale = :"zh-CN"
2. 如何确定自己软件的本地化默认文件路径?
vi config/environment.rb
config.i18n.load_path += Dir[File.join("#{RAILS_ROOT}/config/", 'locales', 'admin', '*.{rb,yml}')]
用户定义本地化文件的实例命令
rails 02_i18n_demo && cd 02_i18n_demo
 
vi config/environment.rb
# config.i18n.load_path << Dir[File.join(RAILS_ROOT, 'my', 'locales', '*.{rb,yml}')]
# config.i18n.default_locale = :de
config.i18n.default_locale = :"zh-CN"
config.i18n.load_path += Dir[File.join("#{RAILS_ROOT}/config/", 'locales', 'admin', '*.{rb,yml}')]
 
mkdir config/locales/admin
 
vi config/locales/admin/zh-CN.yml
zh-CN:
# I18n.translate :hello
hello: "世界,你好!"
用户定义本地化文件的操作方法命令
localhost:demo gudao$ ./script/console
Loading development environment (Rails 2.2.2)
>> I18n.load_path
=> ["/Library/Ruby/Gems/1.8/gems/activesupport-2.2.2/lib/active_support/locale/en.yml",
"/Library/Ruby/Gems/1.8/gems/activerecord-2.2.2/lib/active_record/locale/en.yml",
"/Library/Ruby/Gems/1.8/gems/actionpack-2.2.2/lib/action_view/locale/en.yml",
"/Users/gudao/Documents/railsspace/open-projects/i18n/demo/config/locales/admin/en.yml",
"/Users/gudao/Documents/railsspace/open-projects/i18n/demo/config/locales/admin/zh-CN.yml"]
>> I18n.t :hello
=> "世界,你好!"
>> exit

Rails2.2世界:国际化功能问与答(一)

Gudao Luo2008-11-26 at 06:02发表的

国际化功能问与答(一)i18n
  • 国际化功能问与答(一):国际化(i18n)文件
    • 默认国际化文件在哪里?
      $RAILS_ROOT/config/locales
    • 使用什么样语言写国际化文件?
      YAML语言
      或者
      Ruby语言
    • 通常中国大陆中文使用什么国际化文件名称?
      zh-CN.yml
      或者
      zh-CN.rb
    • 默认国际化文件是定义了什么文字语言?
      English
    • 国际化文件最大特点是什么?
      以命名空间为基础结构
    • 一个国际化文件是否可以存在几种语言或者方言(zh-CN,zh-HK,zh-TW)呢?
      可以
    • 一种语言或者一种方言的国际化内容是否可以存放到几个国际化文件呢?
      可以
    • 一个国际化文件名称是否与文件内容相关呢?
      无关

Apple世界:终于有了合适的中文输入法Fun Input Toy

Gudao Luo2008-11-24 at 14:33发表的

终于找到了中文输入法Fun Input Toy
  • 安装说明
    • 下载: http://fit.coollittlethings.com/down.php?v=1.9.3_intel
    • 解压文件即双击该文件: FunInputToy_v1.9.3_intel.zip
    • 双击文件: FunInputToy_v1.9.3_intel.pkg
    • 自动重新启动计算机
    • 系统偏好设置 >> 多语言环境 >> 输入法菜单 >> 如上图所示
  • 致谢
    • 非常感谢 kyle 所提供的信息.

代码世界:开源软件Redmin版本0.7.3的代码问题

Gudao Luo2008-11-11 at 13:54发表的

免费无限存放图片在slide.com!
  • 问题说明
    • 创建一个项目
    • 再创建新自己的跟踪标签,注意顺序。
    • 问题出现了,在项目创建项目新的问题时,自己所创建的跟踪标签并没有出现。
  • 解决办法
    • 这个问题的原因是软件代码把跟踪标签依赖于项目。
    • 代码改写如下面代码所示。第二行代码是源代码,而第三行代码是新增加的代码。
    • 所有@project.trackers及其类似的代码都改写Tracker.all。
文件app/views/issues/_form.rhtml的部分代码
<% if @issue.new_record? %>
<p><%#= f.select :tracker_id, @project.trackers.collect {|t| [t.name, t.id]}, :required => true %>
<%= f.select :tracker_id, Tracker.all.collect {|t| [t.name, t.id]}, :required => true %></p>

网站推荐:在线中文艺术字体

Gudao Luo2008-06-08 at 11:07发表的

免费无限存放图片在slide.com!

Mac世界:TextMate中文显示问题

Gudao Luo2008-03-09 at 12:21发表的

TextMate中文显示问题
  • 参考资料
    • http://blog.roodo.com/shinbang/archives/3264563.html
    • http://www.sapnow.cn/index.php?action=blog&id=320
    • http://otherside.mimijidi.com/entries/cjk-in-textmate/
    • http://docs.info.apple.com/article.html?path=FontBook/2.0/zh/fb680.html

办公软件:完全免费的词霸软件

Gudao Luo2007-12-06 at 06:46发表的

完全免费的词霸软件

网站推荐:日文翻译为中文

Gudao Luo2007-06-07 at 21:58发表的