We are happy to announce of the release of the 1.9.0 the development
release. You can fetch it from:
ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.bz2
407cc7d0032e19eb12216c0ebc7f17b3
ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.gz
b20cce98b284f7f75939c09d5c8e846d
ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.zip
78b2a5f9a81c5f6775002c4fb24d2d75
We hope this helps you to enjoy hacking. Happy Holidays.
matz.
Jan'uary
在Rails启动的时候自动下载Google Maps Library
Jan 发表于 2007-12-26 02:28:44
如果你用Google Maps做mashup, 不可避免的需要在网页中include google maps的javascript文件. 如果每个request都要通过访问google的服务器取得那个小小的js文件,未免太让人郁闷,尤其对于开发人员来讲. 很自然的,我们想要保存一个本地拷贝,但是依靠人肉下载的手段一来麻烦,二则容易忘记更新本地拷贝,万一google更新了api,你就挂了.
于是我让rails在启动的时候自动下载一份最新版本放到制定目录,这样每次重启rails server后你用的都是最新版本的api了.
添加一个新文件RAILS_ROOT/config/initializers/initialize.rb, 包含以下代码:
然后在你的layout里面直接javascript_include_tag "google_map_library"就行了. 如果你有svn, 还能保存所有google maps js的历史版本, 就不怕google又发布新版本导致网站一团糟了 :)
于是我让rails在启动的时候自动下载一份最新版本放到制定目录,这样每次重启rails server后你用的都是最新版本的api了.
添加一个新文件RAILS_ROOT/config/initializers/initialize.rb, 包含以下代码:
require 'open-uri'
#--------------------------------------------------
# use to download the latest google maps library when
# rails startup
#--------------------------------------------------
def download(from_link, to_dir, save_name)
open(from_link) do |stream|
File.open(File.join(to_dir, save_name), "wb") do |file|
file.write(stream.read)
end
end
end
gmap_include_js = "INSERT_YOUR_GOOGLE_MAPS_KEY_HERE"
download(gmap_include_js, "#{RAILS_ROOT}/public/javascripts", "google_maps_library.js")
然后在你的layout里面直接javascript_include_tag "google_map_library"就行了. 如果你有svn, 还能保存所有google maps js的历史版本, 就不怕google又发布新版本导致网站一团糟了 :)
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
Ruby 1.9.0 is released
Jan 发表于 2007-12-26 00:34:14
on 25.12.2007 16:05
Hi,
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
使用firefox 3.0 beta2 无限爽中...
Jan 发表于 2007-12-25 23:58:23
把ff升级到3.0beta2,发现自带的书签功能和del.icio.us插件功能几乎一样强大,速度却比插件快了许多.正好我又想乘机把del.icio.us清理一下,收藏的东西太多也不是件好事,于是干脆手工把常用链接转移到了自带书签中, 然后... 我就很无耻的把del.icio.us插件给卸载了... 曾经号称没有这个插件就没法活的我真是罪过啊,哦米托佛
现在浏览器只装了一个插件,firebug,只对localhost启用.浏览速度快啊,爽死我了.
现在浏览器只装了一个插件,firebug,只对localhost启用.浏览速度快啊,爽死我了.
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
Rails Test Coverage
Jan 发表于 2007-12-21 20:20:52
Rails是一个很强调测试的框架,就不用阐述了,写测试最需要的就是评估测试覆盖率的工具了,Ruby/Rails怎么可能没有?rcov加rails_rcov插件就是完美的解决方案,比用ant+junit+emma舒服多了,泪奔。。。
很痛苦的是,rails的贡献者基本上用的都是linux,于是乎基本上无视所编写程序在windows平台上的稳定性。。。rails_cov的作者直接告诉我们说,他没有windows的机器,windows上碰到的问题他没有办法解决,你可以解决了把patch发给他云云,我晕。
言归正传,rails_rcov装了以后用不了,如果老是出这个错误:
打开Rails目录中vendor/plugin/rails_rcov里面的rails_rcov.rake文件,把134行的rcov.cmd改成rcov.bat就行了,这是一个和ruby system调用相关的错误。搞了我两个小时。。。我恨windows。。。要不是笔记本挂了我也不会用windows来做开发了。。。
很痛苦的是,rails的贡献者基本上用的都是linux,于是乎基本上无视所编写程序在windows平台上的稳定性。。。rails_cov的作者直接告诉我们说,他没有windows的机器,windows上碰到的问题他没有办法解决,你可以解决了把patch发给他云云,我晕。
言归正传,rails_rcov装了以后用不了,如果老是出这个错误:
rake aborted!
You have a nil object when you didn't expect it!
The error occured while evaluating nil.exitstatus
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [c:/ruby/bin/ruby ./vendor/plugins/rails_rc...]
c:/ruby/lib/ruby/gems/1.8/gemsbr />
打开Rails目录中vendor/plugin/rails_rcov里面的rails_rcov.rake文件,把134行的rcov.cmd改成rcov.bat就行了,这是一个和ruby system调用相关的错误。搞了我两个小时。。。我恨windows。。。要不是笔记本挂了我也不会用windows来做开发了。。。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
Ruby/Rails: too good to be true? Options
Jan 发表于 2007-12-20 23:33:53
Rails新闻组里面的一个thread,楼主是个喜欢抛开框架用PHP的小公司老板,由于对Ruby/Rails产生了兴趣来请人比较PHP和Ruby(某种程度上),对PHP和Ruby的区别的切入点很有意思:他说用PHP做网站的不喜欢用框架,用Ruby做网站的几乎都用框架,为什么?
其实原因还是蛮简单的,呵呵,不过仍然值得一看。
其实原因还是蛮简单的,呵呵,不过仍然值得一看。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
JS template in Rails 2.0
Jan 发表于 2007-12-18 17:19:40
Rails 2.0的一个新feature是把文件类型和渲染引擎分开,比如以前写作index.rhtml的view,现在可以写成index.html.erb
这个特性带来了一个1.2中没有的用法,你可以用erb来写js!
1. 我在index.html.erb里面写一个AJAX call,link_to_remote "xxx", :url => {:action => :ajaxaction}
2. 跑到controller里面,在ajaxaction中加入respond_to do |format| format.js end
3. 在app/views/:controller里面建立一个叫做ajaxaction.js.erb的新文件,在这里面你可以非常方便的把erb和js结合起来用:
注意,这不是RJS - RJS让你写的是ruby code,这里让你写JS code,这就是比RJS方便的地方。
爽歪歪。
这个特性带来了一个1.2中没有的用法,你可以用erb来写js!
1. 我在index.html.erb里面写一个AJAX call,link_to_remote "xxx", :url => {:action => :ajaxaction}
2. 跑到controller里面,在ajaxaction中加入respond_to do |format| format.js end
3. 在app/views/:controller里面建立一个叫做ajaxaction.js.erb的新文件,在这里面你可以非常方便的把erb和js结合起来用:
<% for item in @items %>
alert(item.id);
<% end %>
注意,这不是RJS - RJS让你写的是ruby code,这里让你写JS code,这就是比RJS方便的地方。
爽歪歪。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
用gem升级到Rails 2.0之前
Jan 发表于 2007-12-17 15:13:17
先gem update --system再gem update rails
搞死人了
搞死人了
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
有道的推广策略 牛b
Jan 发表于 2007-12-14 17:38:38
搞这么个博客男女的怪东西,的确很有让人试一下的欲望。
其实我是来显摆的,居然给我这么牛b的结果
其实我是来显摆的,居然给我这么牛b的结果
| Jan'uary | ||||||
|
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
ditu.live.com
Jan 发表于 2007-12-14 03:24:59
ditu.live.com,微软的地图搜索中国版上线了,深深的被震撼了。。。太好用了,尤其是那个公交搜索,简直无敌了。虽然地图的精度好像普通了点,也没有Google Earth那么花哨的地形地貌卫星照片,但是它的确。。。好用啊。强烈推荐。
ps. 对ff3支持也很好
ps. 对ff3支持也很好
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
女人真正想要的是什么
Jan 发表于 2007-12-12 02:08:45
老夫基本上很讨厌狗屁哲理文章,以下是例外之一
老夫很年轻的时候就说过,随心所欲,顺其自然,老夫现在老了,觉得当时很牛逼。
年轻的亚瑟国王被邻国的伏兵抓获。邻国的君主被亚瑟的年轻和乐观所打动,没有杀他。并承诺只要亚瑟可以回答一个非常难的问题,他就可以给亚瑟自由。亚瑟有一年的时间来思考这个问题。如果一年的时间还不能给他答案,亚瑟就会被处死。
这个问题是:女人真正想要的是什么?
这个问题连最有见识的人都困惑难解,何况年轻的亚瑟,对于他这是一个无法回答的问题。但总比死亡要好得多,亚瑟接受了国王的命题——在一年的最后一天给他答案。
亚瑟回到自己的国家,开始向每个人征求答案:公主、妓女、牧师、智者、宫廷小丑,他问了所有的人,但没有人可以给他一个满意的回答。人们告诉他去请教一个老女巫,只有她才能知道答案。但是他们警告他,女巫的收费非常高,因为她昂贵的收费在全国是出名的。
一年的最后一天到了,亚瑟别无选择,只好去找女巫。女巫答应回答他的问题,但他必须首先接受她的交换条件:和亚瑟王最高贵的圆桌武士之一,他最亲近的 朋友——加温结婚。亚瑟王惊骇极了,看看女巫:驼背,丑陋不堪,只有一个牙齿,身上发出臭水沟般难闻的气味,而且经常制造出猥亵的声音。他从没有见过如此 不和谐的怪物。他拒绝了,他不能强迫他的朋友娶这样的女人而让自己背负沉重的精神包袱。
加温知道这个消息后,对亚瑟说:“我同意和女巫结婚,没有比拯救亚瑟的生命和保存圆桌会议更重要的事了。”于是婚礼宣布了,女巫回答了亚瑟的问题:女人真正想要的是主宰自己的命运。
每个人都立即知道了女巫说出了一个伟大的真理,亚瑟的生命被解救了。
来看看加温和女巫的婚礼吧,这是怎样的婚礼呀!亚瑟王在无法解脱的极度痛苦中哭泣;加温一如既往的谦和,而女巫却在庆典上表现出她最坏的行为:她用手抓东西吃,打嗝,放屁,让所有的人感到恶心,不舒服。
新婚的夜晚来临了:加温依然坚强地面对可怕的夜晚,走进新房。是怎样的景象在等待着他呀!一个他从没见过的美丽的少女半躺在婚床上!加温惊呆了,问她 到底是怎么回事。美女回答说,因为当她是个丑陋的女巫时加温对她非常好,于是她在白天呈现她可怕的一面,夜晚呈现她美少女的一面。
那么加温想要,她在白天或夜晚的哪一面呢?
多么残酷的问题呀!加温开始思考他的困境:在白天向朋友们展现一个美丽的女人,而在夜晚,在他自己的屋子里,面对的是一个又老又丑如幽灵般的女巫呢,还是选择白天拥有一个丑陋的女巫妻子,但在晚上与一个美丽的女人共度良宵?
如果你是加温,会怎样选择呢?
第二天的口语课上,答案五花八门,归纳起来也就是两种:一种选择白天是女巫,夜晚是美女,理由是妻子是自己的,不必爱慕虚荣,苦乐自知就可以了;一种 选择白天是美女,因为可以得到别人羡慕的目光,至于晚上,可以在外作乐.回到家里,漆黑的屋子,美丑都无所谓了,老师听了所有同学的答案,没有说什么,只 是问我们是否想知道加温的回答。大家说当然想。老师说:“加温没有做任何选择,只是对他的妻子说:“既然女人最想要的是主宰自己的命运,那么就由你自己决 定吧。”于是女巫选择白天夜晚都是美丽的女人。
所有的人都沉默了——竟没有一个人作出加温的选择。有时我们是不是很自私,以自己的喜好去安排别人的生活。
老夫很年轻的时候就说过,随心所欲,顺其自然,老夫现在老了,觉得当时很牛逼。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
Rails 2.0 : Check for deprecations before you upgrade
Jan 发表于 2007-12-11 00:10:15
your-console $ rake deprecated
lib/tasks/rails.rake
desc "Checks your app and gently warns you if you are using deprecated code."
task :deprecated => :environment do
deprecated = {
'@params' => 'Use params[] instead',
'@session' => 'Use session[] instead',
'@flash' => 'Use flash[] instead',
'@request' => 'Use request[] instead',
'@env' => 'Use env[] instead',
'find_all' => 'Use find(:all) instead',
'find_first' => 'Use find(:first) instead',
'render_partial' => 'Use render :partial instead',
'component' => 'Use of components are frowned upon',
'paginate' => 'The default paginator is slow. Writing your own may be faster',
'start_form_tag' => 'Use form_for instead',
'end_form_tag' => 'Use form_for instead',
':post => true' => 'Use :method => :post instead'
}
deprecated.each do |key, warning|
puts '--> ' + key
output = `cd '#{File.expand_path('app', RAILS_ROOT)}' && grep -n --exclude=*.svn* -r '#{key}' *`
unless output =~ /^$/
puts " !! " + warning + " !!"
puts ' ' + '.' * (warning.length + 6)
puts output
else
puts " Clean! Cheers for you!"
end
puts
end
end
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
