摘要: 关键字: fulltext search 1,acts_as_ferret 性能问题 2,acts_as_sphinx 不稳定 3,acts_as_fulltextable 使用MySQL的MyISAM表自己的全文搜索 阅读全文
posted @ 2009-07-10 15:14 麦飞 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 1,页面减肥 页面的肥瘦是影响加载速度最重要的因素 删除不必要的空格、注释 将inline的script和css移到外部文件 可以使用HTML Tidy来给HTML减肥,还可以使用一些压缩工具来给JavaScript减肥 2,减少文件数量 减少页面上引用的文件数量可以减少HTTP连接数 许多JavaScript、CSS文件可以合并最好合并,人家财帮子都把自己的JavaScript functio... 阅读全文
posted @ 2009-07-10 15:12 麦飞 阅读(4526) 评论(0) 推荐(1) 编辑
摘要: 原文:http://blog.hasmanythrough.com/2007/10/18/simpler-than-dirt-restful-dynamic-css 有时候我们需要根据用户偏好保持css style,然后根据不同用户加载不同的css 跟随着Rails 2.0的步伐,看看实现这个功能是多么简单 1,创建一个show.css.erb Java代码 p{color:<%=@user... 阅读全文
posted @ 2009-07-10 15:01 麦飞 阅读(242) 评论(0) 推荐(0) 编辑
摘要: Google是伸缩性的王者。Google一直的目标就是构建高性能高伸缩性的基础组织来支持它们的产品。 平台 Linux 大量语言:Python,Java,C++ 状态 在2006年大约有450,000台廉价服务器 在2005年Google索引了80亿Web页面,现在没有人知道数目 目前在Google有超过200个GFS集群。一个集群可以有1000或者甚至5000台机器。成千上万的机器从运行着5... 阅读全文
posted @ 2009-07-10 14:57 麦飞 阅读(235) 评论(0) 推荐(0) 编辑
摘要: Twitter是目前为止最大的Ruby on Rails应用,几个月间页面点击由0增长到几百万,现在的Twitter比今年月快了10000% 平台 Ruby on Rails Erlang MySQL Mongrel Munin Nagios Google Analytics AWStats Memcached 状态 成千上万的用户,真实数量保密 每秒钟600请求 每秒钟平均200-300个连... 阅读全文
posted @ 2009-07-10 14:55 麦飞 阅读(434) 评论(0) 推荐(0) 编辑
摘要: Rails虽然自带有Controller、Model、Integration的测试框架,但是用起来感觉很枯燥无味 所以,你应该试试RSpec+Mocha这道纯正的墨西哥菜 RSpec is a framework which provides programmers with a Domain Specific Language to describe the behaviour of Ruby... 阅读全文
posted @ 2009-07-10 14:44 麦飞 阅读(2597) 评论(0) 推荐(0) 编辑
摘要: 关键字: Rails OpenID 使用ruby-openid这个gem和open_id_authentication插件做OpenID认证 ruby代码 sudogeminstallruby-openid rubyscript\plugininstallopen_id_authentication rakeopen_id_authentication:db:createsudo gem inst... 阅读全文
posted @ 2009-07-10 14:29 麦飞 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 关键字: rails restful authentication restful_authentication是Rails的一个认证插件,基于REST方式,适合RESTful的geek 安装: ruby代码 rubyscript/plugininstallhttp://svn.techno-weenie.net/projects/plugins/restful_authentication/ r... 阅读全文
posted @ 2009-07-10 14:26 麦飞 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 关键字: set stack queue tree graph Set 初始化 require 'set' s1 = Set[3,4,5] arr = [3,4,5] s2 = Set.new(arr) s3 = Set.new(arr) {|x| x.to_s} 简单操作 x = Set[1,2,3] y = Set[3,4,5] a = x.union(y) # Set[1,2,3,4,... 阅读全文
posted @ 2009-07-10 14:16 麦飞 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 我们经常用rake db:migrate来做数据库迁移 我们还可以使用rake -T来列出可得到的rake任务 让我们在store这个Rails程序中创建一个自己的Rake任务 我们创建store/lib/tasks/ryanb.rake: ruby代码 task:greetdoputs"HelloWorld!"endtask:askdoputs"Howareyou?"endtask :greet... 阅读全文
posted @ 2009-07-10 14:02 麦飞 阅读(2129) 评论(0) 推荐(0) 编辑
摘要: Syntax SugarJava代码 ifnotversion.empty? returnversion.gsub('_','.') end unlessversion.empty? returnversion.gsub('_','.') endif not version.empty?return version.gsub('_', '.')endunless version.empty?ret... 阅读全文
posted @ 2009-07-10 12:17 麦飞 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 关键字: Rails Helper Rails默认为每个controller指定一个helper,所有的helper都放在app/helpers目录下 但是有些Helper我们希望是全局共享的,一般我们将这些Helper方法都扔在ApplicationHelper模块里 其实我们可以在app/helpers目录下建立我们自定义的Helper模块,如formatting_helper、path_he... 阅读全文
posted @ 2009-07-10 11:31 麦飞 阅读(543) 评论(0) 推荐(0) 编辑
摘要: 关键字: Rails url 设计更利于搜索的url是SEO的一个要点,我们来看看怎样将http://localhost/products/6转化成 http://localhost/products/6-gallon-of-milk或者http://localhost/products/gallon-of-milk 对第一种url,首先添加permalink字段: ruby代码 create_t... 阅读全文
posted @ 2009-07-10 11:27 麦飞 阅读(500) 评论(0) 推荐(0) 编辑
摘要: 关键字: Hacking 看下面一个场景: ruby代码 #product.rbclassProduct<ActiveRecord::Basevalidates_presence_of:pricedefself.find_orderedfind(:all,:order=>'name')endend#product_test.rbrequireFile.dirname(__FILE__)... 阅读全文
posted @ 2009-07-10 11:20 麦飞 阅读(248) 评论(0) 推荐(1) 编辑
摘要: 关键字: Rails test mocha 严重依赖fixtures的测试会变得十分脆弱,并且很难维护。 让我们来看看怎样写不使用fixtures的测试。 看cart/line_item的例子: ruby代码 classCart<ActiveRecord::Basehas_many:line_itemsdeftotal_weightline_items.to_s.sum(&:weig... 阅读全文
posted @ 2009-07-10 11:16 麦飞 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 关键字: rails generator 来看看怎样写自己的Generator吧 首先运行: ruby代码 rubyscript/generateruby script/generate console中的输出可以看到Rails默认的generate: ruby代码 InstalledGenerators Builtin:controller,integration_test,mailer,mig... 阅读全文
posted @ 2009-07-10 10:15 麦飞 阅读(515) 评论(0) 推荐(0) 编辑
摘要: 关键字: Rails Logger Rails在controller里自带了logger,我们可以用来做debug: ruby代码 defshow @cart=current_cart logger.debug"Helloworld!#{@cart.to_yaml}" #debug,info,warn,error,fatal enddef show @cart = current_cart log... 阅读全文
posted @ 2009-07-10 09:54 麦飞 阅读(2353) 评论(0) 推荐(1) 编辑