Tag: ruby

在ruby中捕获Ctrl-C

我通过了一个长期运行的遗留ruby程序,其中有无数的事件 begin #dosomething rescue Exception => e #halt the exception's progress end 贯穿始终。 没有追踪每一个可能的exception,这些都可以处理(至less不是立即),我仍然希望能够按Ctrl Cclosures它。 我想这样做只会增加代码(所以我不会影响现有的行为,或者在运行过程中错过捕获的exception)。 [ Ctrl C是SIGINT或SystemExit,它似乎等同于Rubyexception处理系统中的SignalException.new("INT") 。 class SignalException < Exception ,这就是出现这个问题的原因。] 我想写的代码是: begin #dosomething rescue SignalException => e raise e rescue Exception => e #halt the exception's progress end 编辑:这个代码工作,只要你得到你想要陷阱的exception的类正确。 这可以是SystemExit,Interrupt或IRB :: Abort,如下所示。

Ruby on Rails中的Gemfile和Gemfile.lock有什么区别?

我是Ruby on Rails的初学者,我正在使用Rails 3.0.9。 Rails中Gemfile和Gemfile.lock什么区别?

注入同样的东西,减less在ruby?

我看到他们在这里被logging在一起。 它们是一样的吗? 为什么Ruby有这么多的别名(比如map / collect的数组)? 非常感谢。

如何通过散列中的值对散​​列数组进行sorting?

这个Ruby代码不像我所期望的那样: # create an array of hashes sort_me = [] sort_me.push({"value"=>1, "name"=>"a"}) sort_me.push({"value"=>3, "name"=>"c"}) sort_me.push({"value"=>2, "name"=>"b"}) # sort sort_me.sort_by { |k| k["value"]} # same order as above! puts sort_me 我正在寻找关键字“值”sorting哈希数组,但他们打印未分类。

Ruby on Rails:从数据库列中获取最大值

目前我可以在我的数据库上进行直接的SQL查询: SELECT MAX(bar) FROM table_name 并返回该表中的最大值。 但是,当我在Rails中创build我认为是等效的调用时,它不起作用。 我打电话给: Bar.all(:select => "Max(bar)") 这只是返回: [#<Bar >] 在我所要求的栏目中是一系列的识别号码,我正在寻找最大的号码。 有没有其他方式在Rails中访问?

在Ruby中阻止评论

Ruby有块评论吗? 如果没有,在TextMate中突出显示的代码块前面插入#是否有效?

在Rails中 – 是否有一个rails方法将换行符转换为<br>?

有没有Railsy的方式转换\ n到<br> ? 目前,我正在这样做: mystring.gsub(/\n/, '<br>')

Rails:将UTC DateTime转换为另一个时区

在Ruby / Rails中,如何将UTCdate时间转换为另一个时区?

NoMethodError:升级到rake 11后未定义的方法`last_comment'

运行任何rake任务时,我会得到: NoMethodError:未定义的方法`last_comment' 这是bundle update后拉到新版本的耙,版本11.0.1 。 $ grep rake Gemfile.lock rake rake (>= 0.8.7) rake (11.0.1) rake $ bundle update $ bundle exec rake db:drop # any rake task NoMethodError:未定义的方法`last_comment'为#<Rake :: Application:0x007ff0cf37be38> 版本 Rails 3.2.11 耙子11.0.1

Ruby%r {}expression式

在模型中有一个领域 validates :image_file_name, :format => { :with => %r{\.(gif|jpg|jpeg|png)$}i 这对我来说很奇怪。 我知道这是一个正则expression式。 但是我想: 知道究竟是什么意思。 %r{value}等于/value/ ? 能够用普通的Ruby正则expression式运算符/some regex/或~=replace它。 可能吗?