ruby
文章平均质量分 54
jy503160
这个作者很懒,什么都没留下…
展开
-
ruby中||=
def current_user @current_user ||= session[:user_id] && User.find(session[:user_id])end 短短一行代码,却含有很多逻辑,以前老是搞混,这里总结一下。这句代码相当于def current_user if @current_user re...原创 2014-07-24 17:18:41 · 105 阅读 · 0 评论 -
转载收藏:ruby的继承
转自:http://www.cnblogs.com/IAmBetter/archive/2013/03/16/2963680.html1.先看私有方法能否被继承class A @@name="Anleb" def ask puts @@name end private ...原创 2014-10-28 14:32:20 · 84 阅读 · 0 评论 -
(转载收藏)ruby元编程 那些书里没有的知识 define_method
转自:http://www.cnblogs.com/IAmBetter/archive/2013/03/16/2963696.html你有多少种方式创建一个方法?大多数人想到的可能是def 关键字 #普通方法 def tele_you puts "I am Anleb" end #普通方法def tele_you pu...原创 2014-10-28 14:29:36 · 107 阅读 · 0 评论 -
解决rspec 生成报告时报utf-8错误的方法
找到gems\1.9.1\gems\rspec-core-2.14.3\lib\rspec\core\formatters\snippet_extractor.rb文件中的第27行: 在这边记录一下,防止以后再遇到。。。出现这个原因是因为ruby文件用utf-8格式的,但是源码都是GBK处理的,找到\lib\ruby\gems\1.9.1\gems \rspec-core-2.1...原创 2014-07-29 10:43:25 · 265 阅读 · 0 评论 -
alias, alias_method和alias_method_chain
1. aliasRuby里的关键字,用于定义方法或者全局变量的别名。 例子:<CCID_NOBR><CCID_CODE>class Adef m1puts "m1"endalias m2 m1end=> nila = A.new=> #<A:0xb7ef5234>a.m1m1=>...原创 2014-07-29 10:42:15 · 123 阅读 · 0 评论 -
ruby复制对象的方法(dup 和 clone)
Ruby内置的方法Object#clone和Object#dup可以用来copy一个对象,两者区别是dup只复制对象的内容,而clone还复制与对象相关联的内容,如singleton method[ruby] view plaincopyprint?s = "cat" def s.upcase "CaT" end s_dup = s.dup s_clone = s.clone ...原创 2014-07-28 14:05:32 · 219 阅读 · 0 评论 -
ruby 的 require 和 require_relative
require 只是一个 Kernel 的方法requrie filename如果 filename 是一个相对路径,则会在 $LAOD_PATH ($:) 中去寻找相应的文件(.rb, .so, .dll ...)如果 filename 是一个绝对路径,则就寻找绝对路径require_relative 也是 Kernel 的方法require_...原创 2014-07-28 12:07:52 · 369 阅读 · 0 评论 -
ruby的习惯用法
Ruby有不少惯用法,这里略作一些介绍,也方便阅读他人代码: 迭代 一般写法: for i in (1..10) puts i end习惯写法: Java代码 (1..10).each{|i| puts i} 或 1.upto(10){|i| puts i} # from njmzhang (1..10).each{|i| puts i}...原创 2014-07-28 10:55:14 · 132 阅读 · 0 评论 -
初识Ruby之——[转]ruby 中的respond_to
如同其他的OO语言一样,在ruby中,通过给对象发送消息,来完成对象的功能,比如 str.upcase ,就是给str发送upcase的消息,点操作符(.),就是用来给对象发送消息的,str接受到消息,然后执行与消息对应的功能。 但是,某些时候,我们并不知道对象能响应哪些消息,比如下面的代码就会产生错误 obj = Object.new obj.talk undefined method 'tal...原创 2014-07-28 10:40:09 · 197 阅读 · 0 评论 -
Ruby入门——数组
1. 数组的定义数组是许多指向对象的引用按顺序排列的数据结构。 数组中保存的是”指向对象的引用“,而不是对象本身。2. 数组的创建例1?a = 1b = "str" #数组不一定都是同一类型c = [a, b, 3, "abcdef"] #=> [1, "str", 3, "abcdef"] #数组可以嵌...原创 2014-07-25 17:05:31 · 123 阅读 · 0 评论 -
Struct和OpenStruct
Ruby的Struct用于快速将很多属性一起绑定到对象上。 Ruby代码 #定义 class Man < Struct.new(:name, :age) end#使用 man = Man.new("allen", 24) puts "#{man.name} is #{man.age} years old" # => ...原创 2014-07-25 16:38:00 · 191 阅读 · 0 评论 -
yaml资料的设置及ruby读取yaml数据
yaml文件的设置及ruby读取yaml数据关于yaml的介绍可以查看IBM的 yaml介绍 ,这里主要讲述yaml格式的设置及如何使用ruby读取yaml数据yaml数据设置--------------------------------------------yaml的语法:Structure通过空格来展示。Sequence里的项用“-”来代表,Map里的键值对用";"分隔,根据上面的例子,...原创 2014-07-25 16:24:16 · 803 阅读 · 0 评论 -
5分钟认识YAML
翻译: liubin http://www.ruby-cn.org/原文: http://yaml.kwiki.org/index.cgi?HomePage文档位置:http://www.ruby-cn.org/articles/yaml_in_5_minutes.html2004/11/11译者注:在开始之前,也许,你想先看看yaml的基本概念,如果是,请点这里:http:/...原创 2014-07-25 15:34:56 · 131 阅读 · 0 评论 -
转载_ruby 异常
Ruby 异常异常和执行总是被联系在一起。如果您打开一个不存在的文件,且没有恰当地处理这种情况,那么您的程序则被认为是低质量的。如果异常发生,则程序停止。异常用于处理各种类型的错误,这些错误可能在程序执行期间发生,所以要采取适当的行动,而不至于让程序完全停止。Ruby 提供了一个完美的处理异常的机制。我们可以在 begin/end 块中附上可能抛出异常的代码,并使用 re...原创 2014-11-03 17:14:18 · 117 阅读 · 0 评论