- 博客(89)
- 收藏
- 关注
原创 启用每天log时注意
rails 2.3.2 下通过在environment.rb文件中增加下面的声明,可以开启每天生成一个log文件,但是注意:development.log(随运行模式,可能是test.log、production.log)文件不能删除,否则运行不起来。# 每天产生一个日志文件RAILS_DEFAULT_LOGGER = Logger.new("#{RAILS_ROOT}/log/#{RAI
2013-06-14 01:25:50
410
原创 NetBeans的Alt+Shift+D功能很强
NetBeans的Alt + Shift + D 等于右键点编辑窗口选“Unlock Window”,这个功能真的很实用。 大小: 52.4 KB 查看图片附件
2013-06-14 01:25:48
398
原创 tinyMCE等RichTextBox难以使用JS验证
经过试验发现,象tinyMCE这样的RichTextBox实际上是通过js将代码中class为mceEditor的textarea隐藏,在其后面生成一个RichTextBox,实际上可能是一个iframe,从而实现了RichTextBox效果。这样的做法确实方便了调用,然而却给js验证带来的困难,因为真实的textarea被隐藏了,而RichTextBox的样式又不易改变,所以js验证对Ric
2013-06-14 01:25:44
523
原创 acts_as_tree没有:include功能
很莫名,为什么acts_as_tree不提供:include接口,没有include,很容易造成n+1问题。没办法,只好在acts_as_tree声明,后面再加上一个has_many声明,把include加上。
2013-06-14 01:25:42
373
原创 form_for 中使用 namespace
form_for中使用namespace,参照下例: [:admin, blog_category] do |f| %> "20", :class => "required text", :value => blog_category.name %> "submit" -%>
2013-06-14 01:25:40
385
原创 Rails路由
由于总结的比较全,读起来很好用,在下转过来了,全当是方便自己看。原文网址:http://hi.baidu.com/haifreeidea/blog/item/57b0f50e5ae133226159f37b.html Rails路由(一)此文原文在http://guides.rubyonrails.org/routing.html。这是我根据自己的理解作的一些笔记。1 使
2013-06-14 01:25:37
456
原创 namespace下的辅助方法路径
当在routes.rb中使用了namespace后,如何在视图中写了辅助方法路径呢? 1、没有namespace时,是这样写的:news_category, :confirm => '确定删除当前分类?', :method => :delete, :title => "删除分类" -%> :put, :title => "向上移动" -%> 2、有了namesp
2013-06-14 01:25:35
309
原创 _url VS. _path
from http://www.ruby-forum.com/topic/101346The users_url helper generates a URL that includes the protocol and host name. The users_path helper generates only the path portion.users_url: http
2013-06-14 01:25:33
323
原创 碰到一个保留字段? hits
在mysql中定义了一个hits名的字段,结果没法用。。。。。难道是rails的保留字段?太神奇了,在google也没查到。
2013-06-14 01:25:31
446
原创 文章浏览次数如何做才好呢?
目前想到一个方法:在表中增加一个字段,存一个最后来访者的ip,再cookie中存一个id(存最后10个id,是不是更保险?),这样就可以防止有人乱刷了。 不知道流行做法是什么。 参考老外写的一个简单的:http://socialect.com/topic/2009/3/22/page-view-counter-in-rails
2013-06-14 01:25:29
454
原创 保证counter_cache在更新时也有效
好比je的博客分类与博客,分类后面标注了当前分类下的文章数量,这个在ror中很容易就联想到通过counter_cache来实现,完美的让人瞠目结舌。在父表加个字段blogs_count,子表model中的belongs_to中加上【:counter_cache => true】声明即可了,剩下的rails统统帮你自动搞定。使用之后,发现在创建博客、删除博客时,分类中的blogs_count
2013-06-14 01:25:27
414
原创 这个js验证框架确实不错,收下了
http://mars.group.iteye.com/group/topic/8903谢谢badqiu同志。 下载下来,稍做了几个修改:1、validation_cn.js文件,用ultraeditor转成utf-8编码的了。(否则,页面出现乱码)2、把汉语错误消息中的“.”改为“。”,半角空格转为全角的了。3、tooltips.css文件的.tooltip .x
2013-06-14 01:25:25
358
原创 ror二级域名的猜想和实现
搜了一下关于ror二级域名的文章,都是零零散散的,最终也没能找到讨论明白的,下面是自己根据一些讨论提供的线索,猜想了一下实现的方式,可以实现类似javaeye的二级域名效果,但是可能实现的很粗笨很无知,所以请知情者狂拍我,不胜感激。 总体划分为两部分进行处理:1、在routes.rb中,增加对没有controller请求的路由,并在ApplicationController中进行处
2013-06-14 01:25:23
411
原创 在Windows Server 2003中启用Windows XP的桌面主题
打开“开始→运行”,键入“Services.msc ”,选themes“主题”(默认是禁止的),然后改为“自动”,按“应用”,选“开启”。,接着点“桌面”的属性,在“主题”里选“Windows XP”。 依次选择“我的电脑→属性→高级→性能”,选择“在桌面上为图标标签使用阴影”。
2013-06-14 01:25:20
366
原创 rails 2.3.2 二级域名多级域名session问题
rails 2.3.2 下,为保证主域名与子域名session均有效,需要在environment.rb文件中加入下列声明。config.action_controller.session = {:domain => '.hulian56.com'}
2013-06-14 01:25:18
556
原创 想出来了javaeye的二级域名是怎么实现的了
查了一下javaeye及互联网上的关于二级域名的实现,robbin虽然已经道出了javaeye网站实现的思路,但还是说的相对模糊,让人无从下手,其实就是一层窗户纸,个别点想不通,又见不到源代码和更详尽说明,就是不知道怎么实现。看了看问的人还是不少,也都没给出完整的答案,下周准备实现一下,然后比较完全的剖析一下。欢迎围观围攻!
2013-06-14 01:25:16
398
原创 netbeans Ruby IDE的快捷键_纯备份贴
netbeans Ruby IDE有很多很棒的快捷键,例如:快速打开ruby类(包括系统类库) - Ctrl + O快速打开当前项目文件 - Alt + Shift + O在controller和view直接跳转 - Ctrl + Shift + A在controller/model和test/spec之间跳转 - Ctrl + Shift + T直接跳转到类和方法的源代码 -
2013-06-14 01:25:14
360
原创 修改ror的scaffold模板
每次使用scaffold生成的new及edit改起来太麻烦了,改模板:ruby\lib\ruby\gems\1.8\gems\rails-2.3.2\lib\rails_generator\generators\components\scaffold\templates
2013-06-14 01:25:12
427
原创 ror(rails)中使用tinymce过程详解及问题解答_20090707更新
前几天在ror中学习使用tinymce,从安装到使用,过程中还有一些问题,查了网上的一些资料,自己也琢磨了一些,现在整理一下,做个总结。 1、下载plugin。http://github.com/kete/tiny_mce/tree/master 2、安装将下载的东东解压后,拷贝到rails工程的vendor/plugins文件夹下,注意,tinymce插件的文件夹名
2013-06-14 01:25:10
574
原创 如果netbeans一直显示gem版本是旧的
可以点:Tools -> Ruby Platform Manager -> 删除现在的Ruby Platform,重新Add一下,就可以显示为最新的Gem版本。
2013-06-14 01:25:07
403
原创 只允许输入字符、数字、下划线、汉字的用户名验证的正则表达式
只请允许输入字符、数字、下划线或汉字的用户名验证,并要求长度验证,字符是4到20,汉字是2到10个。直接上代码。 validates_format_of :name, :with => /^\w+[一-龥]*$/, :message => "用户名只能是字符、数字、下划线(_)或汉字。" # 当用户注册时,自定义的验证 def validate_on_create
2013-06-14 01:25:05
589
原创 验证前自动清除模型属性的空格
validates_presence_of时,如果属性中有空格,就不管用了。在进行验证时,一般都需要trim(ruby是strip)后再验证,但是ror的验证并没有象struts2一样提供先trim再验证的接口,还好有一个插件可以自动清除属性两边的空格。http://github.com/rmm5t/strip_attributes/tree/master StripAttribu
2013-06-14 01:25:03
384
原创 ror实现文件的下载以及中文文件名乱码问题
原网址:http://blog.youkuaiyun.com/candy_whut/archive/2009/03/17/3998838.aspx 谢谢这哥们的办法,真管用。ff和ie下均OK。 实现文件的下载以及中文文件名乱码问题我用的是Mysql数据库,首先建表时要注意,看下面的例子:(注意红色的部分)CREATE TABLE `books` ( `id` i
2013-06-14 01:25:01
422
原创 javaeye的附件方式
javaeye的附件管理方式不错,参考实现了一下,简单讲下我的理解。1、有个attachments表,其中有个字段关联了blog、forum的topic、news的id,应该同时有一个type字段来区分是blog、topic还是news。2、上传部分是个iframe,当file标签的onchange事件被触发时,会调用javascript克隆一个主窗口的iframe,同时提交当前file标
2013-06-14 01:24:59
421
原创 assaf-uuid真烂,换成uuidtools了
assaf-uuidf真够烂的,没几下就不能取uuid了。换成uuidtools了。最新版本:uuidtools-2.0.0使用过程:使用gem install安装后,在model或controller中使用时,要这样用,UUIDTools::UUID.timestamp_create似乎在uuidtools安装后,在其另外的目录下也有一个UUID类,所以要注意。
2013-06-14 01:24:57
503
原创 上传文件plugin:upload_column 比 file_column强得多!
优于file_column是显而易见的。本人发现的几处:1、验证出错时,upload_column提供了自定义错误消息接口。file_column的消息是固定英文的,虽说可以改其源文件,但直接改plugin总是别扭些,也影响update。2、upload_column提供了更全面的图片处理接口。不仅可以选择处理器,而且对于图片的处理也提供了单独调用处理器的方式。 如:使用file
2013-06-14 01:24:55
494
原创 使用file_column生成uuid图片名称
file_column.rb中,@filename = FileColumn::sanitize_filename(file.original_filename)=>uuid = UUID.new@filename = uuid.generate + ".gif" 这样生成的图片的文件名就是uuid的啦,和javaeye图片上传名称原理一致。
2013-06-14 01:24:50
432
原创 file_column更帅的剪切
file_column plugin中,magick_file_column.rb文件的:i.resize(c, r)=>i.resize_to_fill(c, r) 这样剪切的最帅了,和javaeye头像的剪切一样了。
2013-06-14 01:24:48
310
原创 act_as_list和act_as_tree
今天想写个两级分类,打算用一个表做。结果把model定义来定义去,发现正好写了一个类似act_as_tree一句话就搞定的东西。我的定义: # 自引用的连接 belongs_to :parent, :class_name => "NewsCategory", :foreign_key => "parent_id" # 这句可以省略 has_man
2013-06-14 01:24:46
482
原创 windows环境UUID需要设置一下。
修改一下uuid.rb文件的146行。@state_file = File.expand_path(File.join('~', '.ruby-uuid'))=>@state_file = File.expand_path(File.join('D:\uuid_home', '.ruby-uuid')) “~”需要自定义一下,否则出异常。如:D:\uuid_home,需要在
2013-06-14 01:24:42
480
原创 精彩(nice)时间格式化方法
看了几个人提供的nice date time方法,不怎么样,不准确。包括javaeye在内,明明是前天,时间竟写成昨天。自己改了一个。 # 精彩(nice)时间格式化 def status_time_ago_in_words(dt) time = time_ago_in_words(dt) case time when "less than a
2013-06-14 01:24:40
353
原创 ApplicationController中使用ApplicationHelper的方法
需要手工“include ApplicationHelper”,不能直接调用
2013-06-14 01:24:38
503
原创 session满了
在网上看到ror生成验证码的方法时,有下面一段记述。图形验证码的使用,首先要装上rmagick,将附件里的rb文件放在/app/models里,图片的引用src='xxx/code_image',则在xxx控制器的code_image方法定义如下:Ruby代码 1. def code_image 2. session[:noisy_image]=No
2013-06-14 01:24:36
418
原创 只能装RMagick-2.7.1-ImageMagick-6.4.5-3-Q8
Ruby 1.86,ROR 2.02,Windows XP安装RMagick-2.9.0-ImageMagick-6.4.8-6-Q8不行,需要安装RMagick-2.7.1-ImageMagick-6.4.5-3-Q8,装完要重启Windows。
2013-06-14 01:24:33
495
原创 Ruby on Rails 的检验方法(Validation Helpers)大全
可以自定义validate(), 这个方法在每次保存数据时都会被调用.如:def validate if name.blank? && email.blank? errors.add_to_base("You mustspecify a name or an email address") endend同时也可以自定义 validate_on_create(),vali
2013-06-14 01:24:31
392
原创 开始漫长的ROR之旅
开始漫长的产品开发,确定使用ROR开发。目前状态 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄试用AptanaStudio的RadRails中。。。不好使,还是换Netbeans注册的例子中。。。2009/06/05 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄除了个别几章:WebService、部署、Ajax没怎么看之外,其他各章已经看完一遍了。开始写注册的例子。Rails 2.02Ruby 1.8收获:1
2013-06-14 01:24:29
389
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人