Archive for October, 2007

用Vim开发rails?那么试一试这个插件吧.

Monday, October 29th, 2007

Redit 是 TextMate Footnotes的vim版本.
script/plugin install http://svn.antono.info/redit
rake redit:install
将生成一个: redit_controller.rb
什么用呢?
用处一: 当访问默个action(render是包含layout)时:
生成脚注
Edit: Controller | View | Layout
Show: Session | Cookies | Params | Log | General Debug
(Redit Footnotes)
其中点击edit后面的那些选项时是在vi(可定制)中打开的.有用吗?其实有时候输入Rcont,Rview,Rlayout也挺累的,呵呵.
用处二: 比如说代码出错了:
NameError in ReditController#index
undefined local variable or method `aa’ for #
RAILS_ROOT: /home/leo/work/vi/config/..
Application Trace | Framework Trace | Full Trace
#{RAILS_ROOT}/app/controllers/redit_controller.rb:4:in `index’
/usr/bin/mongrel_rails:16:in `load’
/usr/bin/mongrel_rails:16
那么将在这3行:
#{RAILS_ROOT}/app/controllers/redit_controller.rb:4:in `index’
/usr/bin/mongrel_rails:16:in `load’
/usr/bin/mongrel_rails:16
生成链接,点击后自动在vim中打开对应的文件并定位于相应的行.
当然了你可以修改redit_controller的代码使用其他编辑器.
调试的时候方便多了,不错不错.
哦,你完全TDD,那么可能就没什么用喽..

给大流氓打工的结果。。。

Saturday, October 20th, 2007

以前就说过给大流氓打工随时要小心。今天终于发生了
收到一封:“Google AdSense 帐户已被停用” mail
我们注意到您网站上的 Google 广告产生了无效点击或展示。因此,我们停用了您
的 Google AdSense 帐户。请您理解,我们采取这一步骤是为了尽力保护
AdWords 广告客户的利益。
就这么一句话把我给打发了。。。
Google你还欠老子2200USD呢。。
也不想抗争了,没法抗争,抗争也没用了。谁让人家是大流氓呢。
我看了一下”我的帐户因发生无效点击活动而被停用,能否恢复?“
及其搞笑而又傻B的事情是要求提供
”任何您认为可以解释我们所检测到的无效点击行为的相关信息 :“ 和 “在您的 Web 日志或报告中,任何有关可疑 IP 地址、引荐者或申请的数据。 :”
你们说的有问题的不给出问题在哪却要我告诉你哪里出问题了?

Rails Cache + SSI 再 续。

Monday, October 8th, 2007

写完”Rails Cache + SSI 续。”后老是感到很不好意思(虽然没几个人看我的博客),其实那天我想到了很多的办法,不过最后写了一个最差的..为的是展示一下ruby的某些特性.
其实lighttp处理rails cache第一次不能解析include指令的问题是因为lighttpd 1.4不处理fastcgi,proxy的返回数据.
1.5有response filter以及新的mod_proxy了(没测试过ssi的问题,不知道是否可用).不过前几个月我花了1整个晚上时间吧1.4的conf改到1.5跑了几天.不过似乎这个版本没发布正式版还很不稳定程序老是退出,又改回1.4了.(哦.最近访问量增大lighttp 1.4也老是退出,其实也不是很多访问了.看awstats的统计一天就100G的数据传输).
其实解决cache+ssi的最简单的方法就是换服务器吧.apache没试过.不过我的服务器跑apache还真是跑不动,preforker什么的都不行,太慢,太占资源了…
用nginx吧.最近这个很火,说是最好的rails应用部署组合了.
在我的开发机器上测试了cache+ssi,完美通过.正式环境还没改,如果lighttpd还是老掉的话就换上去看看了.
国庆这几天测试cache+ssi的时候顺便完成了mini-cms,啊,感觉真好.其实这种东西更多的是看解决方法了.认真看了cache和routes的api文档的每一个字节后找到的解决办法让我自己都觉得”太美妙了”呵呵..建测试站ing…..
很久没写,废话很多还带上吹牛..