自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 收藏
  • 关注

批量下载railscasts上视频的ruby脚本

Railscasts上面的视频已经出到117集了,很早就想把它们下载下来,但是一直苦于网速太慢。现在网络有了点儿改进,趁机写个ruby脚本把所有视频全部搞定。基本想法就是解析它的RSS,找到视频的地址,然后下载,简单得很。 require 'net/http'require 'rss/2.0'content = ''open('http://feeds.feedburner.com/...

2008-07-14 12:00:20 245

梦回唐朝

唐朝乐队出新专辑了。看到这条新闻的时候心里不禁波动了一下,10年过去了,又听到了这个熟悉的名字---唐朝。想想看第一次听唐朝的歌还是在初中的时候,揣着好长时间才节省下来的10块钱,兴冲冲的去买正版的《梦回唐朝》磁带,之后晚上小心翼翼的塞到随身听里面团在被窝里悄悄的听。现在想想真是好久之前的事情了。 现在,唐朝出新专辑了。我真有一种说不出的感觉,就好像青春期暗恋了很久的一个女孩子在消失了许久后突...

2008-06-29 19:36:56 472

Flex中实现跨域web service调用时crossdomain.xml的issue

玩过Flex或者Flash的同学都知道,如果想要在Flash里面跨域获取数据,就必须在对方server上配置crossdomain.xml。具体来说,比如你的Flash在domain A下面,而你想要访问domain B暴露的web service,那么domain B的server根目录下必须要有一个crossdomain.xml文件来配置说你有这个权限。这个是Flash Player的安全限制...

2008-06-23 10:48:34 173

你知道正则表达式的形式化定义吗?

正则表达式想必大家都用过,确实是很好很强大的东东。但是正则表达式的形式化定义各位知道吗?最近无聊看一本编译方面的书时,里面正好讲到了这个,还是挺有意思的。发出来和大家分享。 首先,正则表达式是一种符号表示法,是为了用有限的描述来详细说明(可能)无限的语言。也就是说正则表达式是针对某个特定语言的,可以说每个正则表达式都定义了一种语言。每个正则表达式代表一个字符集。在正则表达式中,需要定义如下几个概念...

2008-03-05 16:25:54 493

在Leopard上使用NetBeans Ruby IDE

本来像NetBeans这样到东东,应该是装上就可以用到。但是在Leopard上就是有些问题出在gem上面。Leopard上默认的gem目录是系统目录,而NetBeans管理gem的时候需要写权限,于是就会报错了。典型的情况就是安装ruby-debug-ide的时候。为了解决这个问题,我们可以为NetBeans设置自己的GEM_HOME,也就是它把gem安装到哪里。假设你是使用dmg安装的N...

2008-01-17 10:57:41 103

在Leopard上手动安装RMagick

这几天刚刚给自己的小白安装了Leopard,开始迫不及待的把开发环境搬到上面去。Leopard已经自带了完整的ruby-1.8.6和rails-1.2.3,我的项目是用rails-1.2.6的,另外还有一些gem要安装,所以二话不说,马上开始。[code="bash"]# 更新gems,从0.9.4到1.0.1sudo gem update --system# 安装rails-1....

2008-01-17 10:44:01 142

使用ruby生成zip文件

首先安装rubyzip:gem install rubyzip《Ruby Cookbook》里面简要地介绍了如何使用rubyzip读写zip文件,代码如下:[code="ruby"]# 写ziprequire 'rubygems'require 'zip/zipfilesystem'Zip::ZipFile.open('zipfile.zip', Zip::...

2007-10-23 17:28:28 1088 1

关于苹果的老总、苹果的粉丝和苹果的产品

Ok,我知道,这里更应该写技术博客,我在这里说这些无聊的话没什么意思,但是这几天老罗好像心血来潮似的连续发表关于苹果的言论,字里行间都透露着一种让人不舒服的得意心理。那种感觉就好像全世界只有他看清了事实的真相、其它人都是笨蛋一样。虽然老罗一贯是这样的口吻(我没敢说嘴脸,呵呵),但是这次着实让我不爽,因为关于苹果的事情怎么看都是比较专业的话题,老罗虽然自称卖过电脑(好像是在天津吧),但是也不会专业到...

2007-10-21 12:52:33 213

在habtm上使用polymorphic关联

我们知道,在rails中,habtm和polymorphic都是非常好的东东,特别是后者,可以说是rails的ORM中非常强大的功能。《Agile Web Development with Rails》虽然详细讲述了habtm和polymorphic关联,也讲了如何把模型类映射为连接表,但是并没有讲如何把habtm和polymorphic一起使用做一个介绍。这里我就来简单说一下。还是出自真...

2007-10-05 15:19:02 149

尝试在rails中调用MySql的stored procedure,不过最终放弃了。

手头一个项目有这样一个需求,数据库中有一张学生表students,其中每个学生都有自己的生源地(come_from),用户希望能够随机的选择一些学生出来,但是要保证每个生源地的学生都有。我的开发环境是RoR + MySql,简单考虑了一下后,第一个能想到的方法是在rails中生成随机数,然后用offset来得到随机的学生。但是这样做比较麻烦,性能也会很差,因为首先要知道每个生源地下有多少学...

2007-10-03 17:00:27 116

我的第一关rake文件

早就想找个机会写写rake文件,但是接触到的项目都不怎么需要,所以一直也没有去学习一下。这两天一个项目需要把客户给的很多excel文件导入到数据库中(我用的好似MySQL),到网上找了一些工具,感觉都不好,因为客户的excel格式比较乱(特别是日期的格式,竟然是中文数字和阿拉伯数字都有的...),所以就想干脆仔细写一个算了。这是正好想到可以顺便学习一下rake,于是就动手啦。网上关于rak...

2007-09-23 17:10:06 193

修改DataGrid得默认scroll行为

用过Ext的人也许都会注意到,DataGrid的scroll行为只在当前DataGrid中有效。比如,一个带有纵向滚动条的DataGrid,如果我们把鼠标停留在DataGrid上并滚动滚轴,DataGrid中的条目就会随之滚动起来,一直到最后一条为止。这个时候,如果继续滚动,则不会有任何响应。整个网页也不会跟着滚动。在很多情况下,这样做是正确的,其目的是防止整个网页的滚动。因为当在DataGrid...

2007-09-17 15:41:19 509

ferret啊,为你欢喜为你忧。

非常非常奇怪的问题。一开始在mac下面用standard rails bundle + ferret/acts_as_ferret,一切正常。后来想引入rmagick,于是使用rmagick bundle + ferrect/acts_as_ferret,结果报错,server启动不起来。mail list上去问,没人搭理咱。索性换到windows上,顺便开始测试网页的浏览器兼容性。把代码...

2007-08-09 18:05:33 164

在Mac上安装RMagick?别以为有了Locomotive就万事大吉啦~

我或多或少算是一个Mac fan,但是对于这件事,我不得不说自己还是有一些失望的。在Mac上做开发已经有一段时间了,整体感觉就是Mac对developer的支持不是很好。也许Mac的目标主要就是家庭用户,但是作为Mac fan兼,当然是希望它能适合我么developer的口味。这次的问题是在Mac上安装RMagick,网上有很多文章详细说明了如何手动安装,我这里就不重复了,而且手动安装也问...

2007-08-02 09:30:48 127

在controller里面怎么escape html内容?

在view里面可以用h来escape html内容。那在controller里面呢?我的需求是把一些数据用json格式发送到前台,这些数据是用户之前输入的。

2007-07-24 10:24:54 137

ActiveRecord中表关联的一个问题,belongs_to和has_many不是一一对应的情况。

一个挺有意思的问题,想了半天没有解决办法。情景是这样的:系统中有两种category,system_category和user_category,所有属性都一样,只是一个是系统分类,一个是用户自己的分类。比如javaeye就是有这样的机制。用户发文时可以同时选择system_category和user_category。假如数据库的设计是system_category和user_categ...

2007-07-19 18:15:50 195

Rails routes mapping的一个奇怪的问题。顺便讨论一下如何做RESTful的paginate。

大家可以试验一下,在我的开发环境中会出现这个问题,不知道是不是只有我有问题。做法如下:[list][*]随便建立一个Rails工程;[*]随便生成一个scaffold_resource,比如map.resources :articles;[*]在routes.rb中加入如下代码,添加自己的routes mapping:[code="ruby"]map.articles_pa...

2007-07-18 09:33:25 115

[讨论]部署Rails的最佳方案是什么?

从来没真正部署过一个production级别的rails应用,但是9月份很可能要部署一个,所以最近也开始关注Rails的部署问题。这里算是抛砖引玉吧,还请各位有经验的同志热烈讨论,我想很多人也都对这方面很感兴趣。Robbin之前的帖子里面讨论过如何选择Rails的部署方案,也挺详细的,我估计硬件和操作系统方面大家分歧应该不大,总归是linux,服务器越强劲,内存越大越好。所以问题就到了软件...

2007-07-06 13:46:00 142

Rails中使用REST,登录相关的问题,如何获得当前正在处理的url?

如果整个routes是使用传统的mvc方式实现的话,我们可以简单地记录一下当前的controller和action的名字,等到登录成功之后就可以redirect过去。但是如果使用REST,则就不能简单地记录controller和action,例如/articles/1;edit这样的url就比较特别。另外一个问题是,除了要记录url外,还要记录使用什么HTTP Method,是GET, P...

2007-07-03 16:39:07 134

Eclipse 3.3携Europa正式发布了

刚刚逛了一圈论坛,竟然没人提到这么个消息,难道Eclipse真的没落啦?Europa的事儿咱就不说了,之前有一位仁兄已经讲得很清楚了。今天上午到Eclipse主页上溜达了一下,发现3.3在昨天发布了,应该算是一个不小的新闻哦。记得前一阵子总有人说Eclipse发布的速度变慢了,跟不上NetBeans,看来这次发布算是小小地安抚了一下Eclipse的粉丝们啊。主页上明显的一个变动是提...

2007-07-01 12:57:18 234

在apple上使用ruby的郁闷事儿

安装了那个Locomotive,还有iTerm,还有Textmate,以为就万事大吉了。然后运行gem安装ferret,没想到竟然报错说无法make。到命令行下试了一下,果然不能使用gcc啊,make啊这样的东东。Mac不是Unix-based灭?于是去google了一下,发现要装个xcode才能搞定这些东东,敢情apple把这些东西都给踢掉了啊。在去看看xcode,倒还是免费的,不过安装...

2007-06-23 19:49:17 122

在ubuntu下安装ruby需要注意的事情

这里说的是通过apt-get安装ruby,自己编译的情况就免了。首先,在安装ruby本身时一定要把ruby和ruby-dev全安装了。现在的版本是1.8,因此应该执行如下命令[code]sudo apt-get install ruby1.8 ruby1.8-dev rubygems[/code]这是因为许多plugin或者gems都要依赖dev下面的东东,比如ferret...

2007-06-23 19:41:19 188

基于model动态地ComboBox为生成options

在使用RoR创建form时,很多时候需要基于model之间的关系创建ComboBox。RoR提供了很多方便的helper方法帮助我们完成一个 form的创建。例如,如果想要为article创建一个form,并且要为article选择category时,可以使用如下方法:[code="ruby"] url, :html => { :method => method }) do |f| %>...

2007-06-17 16:17:59 146

Linux下面的ftp客户端还是lftp好啊~

本来一直都是用Windows的,虽然早就想全面转移到Linux上面来,但是一直比较懒,而且对Linux也不熟,所以一直都没有真正实现。昨天中了一个比较恶心的病毒,忙于杀毒之余,一气之下就决定全面转到Linux上来了。再加上另外一台是apple的本本,看来真是快要告别Windows了,哈哈。花了好长时间才把文件都备份到了ftp服务器上(服务器是Windows的desktop),然后安装Ubunt...

2007-06-15 12:55:12 337

关于REST的一点想法,欢迎大家讨论。

这阵子正打算用Rails做个东东,所以开始系统地学习起了Rails。巧合的是,大概两周前,dlee邀请我加入Fielding博士关于REST的那篇论文的翻译团队。可以说Rails和REST这两个最热门的词汇几乎同时挤入了我的生活。随着我对Rails的学习和对[Fielding]的翻译,我也开始对REST产生了一些不太成熟的想法,写在这里与大家分享,同时也起到抛砖引玉的作用,欢迎大家讨论。先复习...

2007-04-11 22:07:17 214

Meta-Programming in Ruby: 动态生成class,并添加attribute和method。

Ruby的动态语言特性和强大的meta-programming模型一直是让我这种Java程序员唏嘘感慨。看着RoR可以实现那么多魔术般的事情而不费吹灰之力,我着实想好好学学Ruby的meta-programming。可惜这方面资料好像比较少(至少我是没有找到什么好的,JavaEye这里讨论的也不多),我只能硬着头皮自己慢慢摸索。这篇文章只能算是一个最简单的入门,给大家展示一下Ruby中的meta-...

2006-12-17 16:10:05 196

如何使用Eclipse中对Web Browser的支持

代码很简单:try {    IWorkbenchBrowserSupport support = PlatformUI.getWorkbench().getBrowserSupport();    IWebBrowser browser = support.createBrowser("Some_ID");    browser.openURL(new URL(("http://www.ecl...

2006-11-27 04:32:00 1039

小试org.eclipse.jface.dialogs.TitleAreaDialog

Platform: Eclipse 3.2Dialog是SWT和JFace的一个重要的组成部分,我们在开发Plug-in或RCP的时候也经常会用到它们。这篇随笔不会介绍 SWT的Dialog,因为我想很多人都已经非常熟悉它了。在这里,我要讨论的是JFace的Dialog,或者更进一步说是JFace的 TitleAreaDialog。什么是TitleAreaDialog呢?想想我们常常用到的New ...

2006-10-05 21:37:00 143

如何在SWT中使鼠标的状态变成忙碌

Platform: Eclipse 3.2Eclipse Plug-in开发离不开与用户的交互,我们往往把用户的鼠标点击之类动作所调用的代码包装成一个Action。例如,如果用户点击了一个Menu Item,那么绑定到这个Menu Item上的Action就会运行,这一切都很直观。但是有的时候,用户触发的操作可能需要很长时间才能完成,比如连接数据库,在这种情况下,就必须把鼠标的状态改为忙碌,这样就...

2006-10-05 15:55:00 147

如何在Eclipse PDE的Error Log View中显示自己的Log

Platform: Eclipse 3.2开发任何软件都不得不处理Exception和Log,Eclipse Plug-in也是如此。不过幸运的是,Eclipse PDE提供了记录及显示Exception和Log的机制:Error Log View。作为Eclipse SDK的一部分,PDE的普及率很高,所以除非你是要做RCP,不然的话用Error Log View处理Exception和Log应...

2006-10-05 15:36:00 89

小试org.eclipse.jface.dialogs.TitleAreaDialog

Platform: Eclipse 3.2Dialog是SWT和JFace的一个重要的组成部分,我们在开发Plug-in或RCP的时候也经常会用到它们。这篇随笔不会介绍 SWT的Dialog,因为我想很多人都已经非常熟悉它了。在这里,我要讨论的是JFace的Dialog,或者更进一步说是JFace的 TitleAreaDialog。什么是TitleAreaDialog呢?想想我们常常用到的New ...

2006-10-05 13:37:00 229

如何在SWT中使鼠标的状态变成忙碌

Platform: Eclipse 3.2Eclipse Plug-in开发离不开与用户的交互,我们往往把用户的鼠标点击之类动作所调用的代码包装成一个Action。例如,如果用户点击了一个Menu Item,那么绑定到这个Menu Item上的Action就会运行,这一切都很直观。但是有的时候,用户触发的操作可能需要很长时间才能完成,比如连接数据库,在这种情况下,就必须把鼠标的状态改为忙碌,这样就...

2006-10-05 07:55:00 157

如何在Eclipse PDE的Error Log View中显示自己的Log

Platform: Eclipse 3.2开发任何软件都不得不处理Exception和Log,Eclipse Plug-in也是如此。不过幸运的是,Eclipse PDE提供了记录及显示Exception和Log的机制:Error Log View。作为Eclipse SDK的一部分,PDE的普及率很高,所以除非你是要做RCP,不然的话用Error Log View处理Exception和Log应...

2006-10-05 07:36:00 234

如何在自己编写的Plugin中使用第三方jar

开发Eclipse Plugin的过程中,难免要用到其它的Framework或Lib,如果自己不做配置,那么Eclipse不会自动把这些jar文件作为Plugin运行的classpath,因此Plugin运行的时候就会出错。怎么办呢?假设我们使用的第三方jar文件都放置在Plugin根目录的lib目录下。那么首先要做的是把这些jar文件包含到Plugin的build中,打开plugin.xml文件...

2006-09-08 17:44:00 137

如何在程序中设置Hibernate Configuration的Property

我们在使用Hibernate时一般都会编写一个hibernate.cfg.xml文件,并在其中配置一些连接数据库的属性。这在很多情况下都是非常合适的,但是如果需要动态获得数据库链接信息,这种方法就不行了。假设我们要根据用户的输入信息连接响应的数据库,该怎么办呢?我们都知道,Hibernate的SessionFactory是通过Configuration获得的,hibernate.cfg.xml文件...

2006-09-08 11:36:00 138

如何在自己编写的Plugin中使用第三方jar

开发Eclipse Plugin的过程中,难免要用到其它的Framework或Lib,如果自己不做配置,那么Eclipse不会自动把这些jar文件作为Plugin运行的classpath,因此Plugin运行的时候就会出错。怎么办呢?假设我们使用的第三方jar文件都放置在Plugin根目录的lib目录下。那么首先要做的是把这些jar文件包含到Plugin的build中,打开plugin.xml文件...

2006-09-08 09:44:00 211

如何在程序中设置Hibernate Configuration的Property

我们在使用Hibernate时一般都会编写一个hibernate.cfg.xml文件,并在其中配置一些连接数据库的属性。这在很多情况下都是非常合适的,但是如果需要动态获得数据库链接信息,这种方法就不行了。假设我们要根据用户的输入信息连接响应的数据库,该怎么办呢?我们都知道,Hibernate的SessionFactory是通过Configuration获得的,hibernate.cfg.xml文件...

2006-09-08 03:36:00 179

在线IM工具,我们能够信任你吗?

随着Web 2.0浪潮的兴起,很多传统的C/S结构的应用开始飞快地出现在互联网上。编写文档有Writely,看RSS有抓虾。这不,一个叫meebo的在线IM工具又映入了大家的眼帘,并赢得一片喝彩。meebo现在支持四种IM工具的在线聊天:AIM或ICQ、Yahoo!Messenger、Jabber或GTalk、MSN。乍一看这已经是很不错的功能了。如果你不在使用自己的电脑,而当前的电脑上又没有这些...

2006-08-31 17:43:00 173

在线IM工具,我们能够信任你吗?

随着Web 2.0浪潮的兴起,很多传统的C/S结构的应用开始飞快地出现在互联网上。编写文档有Writely,看RSS有抓虾。这不,一个叫meebo的在线IM工具又映入了大家的眼帘,并赢得一片喝彩。meebo现在支持四种IM工具的在线聊天:AIM或ICQ、Yahoo!Messenger、Jabber或GTalk、MSN。乍一看这已经是很不错的功能了。如果你不在使用自己的电脑,而当前的电脑上又没有这些...

2006-08-31 09:43:00 134

Comet: Low Latency Data for the Browser

翻译自Alex Russell的Blog文章:Comet: Low Latency Datafor the Browser历史深处的一种古老的web technology正在慢慢复兴。已经多年未被触及的浏览器特性又一次登上了web开发的舞台,为UI带来了更好的响应。Server正在学习如何应付一种新的行事方法。并且,我说的不是Ajax。像Jot Live和Meebo这样的新兴服务使用了一种新...

2006-08-24 11:46:00 72

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除