摘要:即使再小心,在开发 Rails 应用程序过程中仍然可能犯错。幸运的是,Rails 提供了一些工具能够帮助你进行复原。举例来说,一个常见的情况是,你想更改控制器的名字,这时你就要撤销生成的代码。生成控制器时,除了控制器文件本身之外,Rails 还会生成很多其他的文件(参见代码 3.4)。撤销生成的文件不仅仅要删除主要的文件,还要删除一些辅助的文件。(事实上,我们还要撤销对routes.rb文件自动做的一些改动。)在 Rails 中,我们可以通过rails destroy命令完成这些操作。一般来说,下面的两个命令是相互抵消的:$ rails generate controller FooBars
阅读全文
摘要:class MyClass def sayHello return "hello from MyClass" end def sayGoodbye return "Goodbye from MyClass" endendclass MyOtherClass < MyClass def sayHello return "Hello from MyOtherClass" end def sayGoodbye return super << "and also from MyOtherClass...
阅读全文
摘要:require 'mysql'con=Mysql.new('localhost','root','root','test')con.query('set names utf8')rs=con.query('select * from demotb')p rs.num_fields()p '---------------------'num=rs.num_rows()for i in 0..num-1 rs.data_seek(i) a=rs.fetch_row() p
阅读全文
摘要:path="test.txt"port=open(path)begin port.each_line{|line| p line.to_s }ensure port.closeendSTDOUT << "i love you \n"port=open('test.txt')s=port.statp s.ftypep s.devp s.inop s.modep s.nlinkbegin a=port.readlines a=port.each{|e| p e} ensure port.close end
阅读全文
摘要:i=1Thread.start{ while true print "Thread 1 \n" i+=1 if i==5 then Thread.kill Thread.current end end}j=1while true print "Thread 2 \n" j+=1 if j==4 then Thread.exit endend
阅读全文
摘要:1 局部变量和方法参数以小写字母开头2 方法名字以小写字母开头3 全局变量以$开头4 实例变量以@开头5 类变量以@@开头6 常量以大写字母开头7 类和模块名以大写字母开头
阅读全文
摘要:module My NA="China" attr:name attr:age def set_name(name) @name=name end def get_name return @name end def set_age(age) @age=age endendclass Test include Myendt=Test.newt.set_name("history")p t.get_name
阅读全文
摘要:module My NA="China" def My.set_name(name) @name=name end def My.get_name return @name end def My.set_age(age) @age=age endendMy.set_name("wanwgenfei")p My.get_namep My::NAmodule Your Na="AC" attr:name def Your.set_name(name) My.set_name(name...
阅读全文
摘要:class My def initialize(name,age) @name=name @age=age end def sayName puts @name end def sayAge puts @age end def repeat(num) while num>0 yield num-=1 end endendm=My.new("wanan", 23)m.repeat(3){puts "...
阅读全文
摘要:class Man def initialize(name,age) @name=name @age=age end def sayName puts @name end def sayAge puts @age endendm=Man.new('tianen',213)m.sayAgem.sayNameclass Man def initialize(name,age) @name=name @age=age end def sayName ...
阅读全文