`
caryl
  • 浏览: 19890 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
列个大纲,以后再写   缓存层级由高到低 1、浏览器端缓存 2、eTag 3、反向代理缓存 一般由前段服务器提供功能,通过request的cache control控制 4、页面缓存 缓存整个页面,不执行action,及action filter 5、action缓存 执行action filter 6、片段缓存 只缓存页面的某一部分 7、Model查询缓存 8、数据库缓存   缓存策略:预生成、访问时生成   更新策略:按时间刷新,根据cache control,内容更新后刷新   存储方式:内存、文件、memcache   其他: etag 返 ...
rbace是一个关于细粒度权限管理的开源项目,项目地址在这里 http://github.com/caryl/rbace/tree/master 项目的目标是做一个细粒度、可插拔的rails开源权限系统。开始于2009年3月份,由于时间关系,一直没有发布。现在发布出来,欢迎大家多提宝贵意见,如果有兴趣参与,请和我联系。 目前还没有更多的文档,如果大家感兴趣,近期打算结合对权限系统的认识和rbace,写一系列的文档,和大家共同探讨。 先把README文件复制一份,权当发布文档了 :) 关于细粒度的权限管理,在权限管理圈子 有一些资料,感兴趣的同学可以参考。 == Welcome t ...

语法糖(1)

[].each(&:name)  ->  [].each{|e|e.name}   add = lambda{|a,b| a + b} add.call(1,2) # => 3 also: add[1,2] # => 3   collection.each {|x| puts x} also: print_me = lambda{|x| puts x} collection.each(&print_me)   >> Hash[1,2,3,4,5,6] => {5=>6, 1=>2, 3=>4}
ActionView::Helpers::SanitizeHelper中有sanitize方法,可以在view 中使用 如果想在model中使用,可以include ActionView::Helpers::SanitizeHelper. 但是会覆盖掉ActiveRecord::Base的sanitize方法   还有一个办法: after_save :sanitize_html private def sanitize_html sanitizer = HTML::WhiteListSanitizer.new self.body = sanitizer.sanitize( ...
虽然api没写,但rails支持after_find after_initialize的回调方法 完整的callback是:   %w{after_find after_initialize before_save after_save before_create after_create before_update after_update before_validation after_validation before_validation_on_create after_validation_on_create before_validation_on_update after_vali ...
irb: [1, 2, 3, 4, 5,6].group_by{|i| i%2} return a Hash   rails console: [1, 2, 3, 4, 5,6].group_by{|i| i%2} return a Array   但都可以用以下方法: result.each do |k,v|   puts k, v, '' end  

namespace管理

./script generate scaffold admin/user include Admin >>User =>Admin::User >>UsersController =>Admin::UsersController >>UsersHelper =>Admin::UsersHelper  
在ubuntu下开发ror,感觉很爽,又发现自带的文本编辑器gedit也相当不错,默认就可以支持ruby的高亮显示,花了点时间收拾收拾,感觉也快比得上传说中的textmate一样漂亮。现在基本上打开gedit和几个终端窗口,不再用那些慢悠悠的ide了。不敢独享,与君共勉。 我的环境,供参考:ubuntu8.04 gnome2.22.2.1  gedit2.22.1 rails 2.02 1.插件(附件打包上传,所有插件放置于 ~/.gnome2/gedit/plugins )  我启用了以下插件,个别做了修改: Class Browser :显示类的大纲 Code Formatter :自动 ...
在使用一些js框架时,如果每一个页面都要重新下载一遍javascript文件,那绝对是很浪费的一件事。 如果是一些简单的函数,可以直接在子框架中使用 parent.fun 进行调用,可对于一些框架如extjs,这种方法往往不能奏效,有什么其他方法可以解决吗,一些网上的意见如下: 1 子页面使用iframe或frame,父页面把javascript和css 注入 子页面。     http://extjs.com/forum/showthread.php?t=1201    另一种方式是在子页面使用iframe或frame,父页面将所有javascript以 inline 的方式写入,子页面在打开 ...
在ruby script/generate scaffold_resource 时可以使用 directory::controller的方式生成,如 ruby script/generate scaffold_resource admin::role 但是生成的view中,所有的链接都不包含“admin”,即 都是 http://localhost:3000/roles  形式而不是 http://localhost:3000/admin/roles 由于这些链接都是由helper方法生成的,查了半天资料也没找到解决方法,所以请教还需要如何进行设置?
Global site tag (gtag.js) - Google Analytics