Questions tagged «ruby»

Ruby是由松本行弘(Matz)于1995年创建的一种多平台开放源代码,动态的,面向对象的解释性语言。[ruby]标记用于与Ruby语言有关的问题,包括其语法和库。Ruby on Rails问题应标记为[ruby-on-rails]。

10
Ruby中是否有“ do…while”循环?
我正在使用此代码让用户输入名称,而程序将它们存储在数组中,直到他们输入一个空字符串(他们必须在每个名称后按Enter): people = [] info = 'a' # must fill variable with something, otherwise loop won't execute while not info.empty? info = gets.chomp people += [Person.new(info)] if not info.empty? end 这段代码在do ... while循环中看起来会更好: people = [] do info = gets.chomp people += [Person.new(info)] if not info.empty? while not info.empty? 在此代码中,我不必将信息分配给一些随机字符串。 …
452 ruby  loops 

10
何时使用RSpec let()?
我倾向于使用before块来设置实例变量。然后,在示例中使用这些变量。我最近来了let()。根据RSpec文档,它用于 ...定义记忆的辅助方法。该值将在同一示例中的多个调用之间缓存,但不会跨示例。 这与在before块中使用实例变量有何不同?还有什么时候应该使用let()vs before()?
447 ruby  rspec 



9
类和模块之间的区别
我来自Java,现在我与Ruby进行了更多合作。 我不熟悉的一种语言功能是module。我想知道a到底是什么,什么module时候使用a,为什么要module在a上使用a class?
437 ruby  class  module 


5
Ruby中的map和collect之间的区别?
我已经对此进行了Google搜索,并得到了斑驳的/矛盾的意见- 在Ruby / Rails中对数组执行a map和a 之间实际上有什么区别collect吗? 这些文档似乎没有任何建议,但是方法或性能上可能存在差异吗?
426 ruby  arrays  map  collect 

10
Ruby的双冒号`::`是什么?
这是什么双冒号::?例如Foo::Bar。 我找到一个定义: 的::是一元运算符,其允许:一个类或模块中定义的,常数,实例方法和类方法从类或模块以外的任何地方进行访问。 如果仅使用::公开任何内容,作用域(私有,受保护)有什么好处?
426 ruby  syntax  operators 

7
如何从红宝石块中突围?
这里是Bar#do_things: class Bar def do_things Foo.some_method(x) do |x| y = x.do_something return y_is_bad if y.bad? # how do i tell it to stop and return do_things? y.do_something_else end keep_doing_more_things end end 这里是Foo#some_method: class Foo def self.some_method(targets, &block) targets.each do |target| begin r = yield(target) rescue failed << target end end …
419 ruby 


6
Ruby中的include和extend有什么区别?
只是让我了解Ruby元编程。mixin /模块总是设法使我感到困惑。 include:将指定的模块方法混合为目标类中的实例方法 扩展:将指定的模块方法作为目标类中的类方法进行混合 那么主要的区别是这样还是更大的龙潜伏了? 例如 module ReusableModule def module_method puts "Module Method: Hi there!" end end class ClassThatIncludes include ReusableModule end class ClassThatExtends extend ReusableModule end puts "Include" ClassThatIncludes.new.module_method # "Module Method: Hi there!" puts "Extend" ClassThatExtends.module_method # "Module Method: Hi there!"
414 ruby  module  include  extend 


11
复制活动记录记录的最简单方法是什么?
我想制作一个activerecord记录的副本,在流程中更改单个字段(除了id之外)。最简单的方法是什么? 我意识到我可以创建一个新记录,然后遍历每个字段,逐字段复制数据-但我认为必须有一种更简单的方法来执行此操作... 如: @newrecord=Record.copy(:id) *perhaps?*

7
如何从Rake任务中运行Rake任务?
我有一个Rakefile,它根据全局变量$build_type可以两种方式编译项目,可以是:debug或:release(结果放在单独的目录中): task :build => [:some_other_tasks] do end 我希望创建一个任务,依次使用两种配置来编译项目,如下所示: task :build_all do [ :debug, :release ].each do |t| $build_type = t # call task :build with all the tasks it depends on (?) end end 有没有办法像调用方法一样调用任务?还是我可以实现类似的目标?
410 ruby  rake 

16
安装json gem时出错'mkmf.rb找不到ruby的头文件'
对于上下文,它位于具有防火墙的远程服务器上。我正在通过代理设置环境。我有ruby 1.8.7。当我尝试gem install .. sudo gem install --http-proxy <host address>:<port> json 我收到以下错误: Building native extensions. This could take a while... ERROR: Error installing json: ERROR: Failed to build gem native extension. /usr/bin/ruby extconf.rb mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.h Gem files will remain installed in /usr/lib64/ruby/gems/1.8/gems/json-1.8.1 for …
406 json  ruby  rubygems 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.