草庐IT

next_run

全部标签

ruby - ruby -run 命令行参数的文档在哪里?

$ruby-run-ehttpd.-p3000帮助文本中未列出-run选项(ruby--help)。我找不到有关此选项的任何文档。 最佳答案 这是一样的$ruby-run-ehttpd.-p3000即使用-r选项要求unlibrary在执行您的代码之前。un库contains“用于替换Makefile等中常见UNIX命令的实用程序”。看起来当前版本的文档没有被正确提取,可能是因为incorrectlyaddednodoctag.Ruby2.0.0docsareavailable. 关于r

ruby-on-rails - 为什么在循环内事务内的救援 block 内调用 next 不起作用?

我有一个这样的循环:#Iteratealistofitemsreq_wf_list.eachdo|req_wf|#BeginatransactionReqWf.transactiondo#ReqWfisanActiveRecordmodelclass#Dosomethings#...#1.Iwanttobeabletocontinueprocessingwiththe#nextiterationoftheloopifthereisanerrorhere#2.Ialsowanttorollbackthetransactionassociatedwith#thisparticularite

ruby - rake 数据库 :migrate runs into an error for an undefined method

我接管了一个由其他人建立的网站。我现在正试图在本地主机上启动并运行它。但是,当我迁移时,看起来以前的开发人员将代码放入可能依赖于已经存在的种子的迁移中。迁移文件如下所示。defupadd_column:supplies,:color,:stringSupply.where(:title=>"Shipped").first.update(:color=>'#e20ce8')enddefdownremove_column:supplies,:colorend当我运行rakedb:migrate时我在这个文件上遇到的错误是...rakeaborted!StandardError:Anerro

ruby-on-rails - rails : How can my app tell if it is running in MRI or JRuby?

在previousquestion中,我询问了如何告诉我的Gemfile是采用与JRuby相关的gem还是与MRI相关的gem。我得到的答案是在Gemfile中执行以下操作:platforms:jrubydogem"activerecord-jdbcsqlite3-adapter"endplatforms:mridogem"sqlite3"end显然,Bundler中的platforms()方法知道如何判断我运行的是MRI还是JRuby。如果我正在运行JRuby或MRI,是否有其他方法可以在我的程序中判断? 最佳答案 你能像这样区分

ruby - 是否有内置方法来检查#next 或#peek 是否会引发 StopIteration?

我正在使用一些迭代器,我必须沿着这些方向做一些事情(enum是一个枚举器)enums_with_zero这通常工作正常,但这是在已经对枚举调用了几次#next之后。这个问题是enum可能在最后并且为enum传递了一些值,我遇到了enum.peek引发StopIteration因为enum已完成。有没有一种方法可以让我在调用它之前检查enum.peek或enum.next是否会导致StopIteration。例如,会有这种行为的东西?classEnumeratordefhas_next?beginpeek&&truerescueStopIterationfalseendendend

emacs 中的 Ruby 模式 : how can I choose which version of ruby is ran when running irb?

我安装了多个版本的ruby​​,当我在emacs上运行“run-ruby”时,它会启动与ruby​​1.8.7关联的irb,而我想使用ruby​​1.9.3的irb。有人知道如何配置吗?谢谢! 最佳答案 另请查看rvm.el.如果你要切换,即使只是一次,安装RubyVersionManager(rvm)和切换很容易,在emacs中也同样容易。一石二鸟。 关于emacs中的Ruby模式:howcanIchoosewhichversionofrubyisranwhenrunningirb?,

ruby - 在 `next` 中使用带有累加器参数的 `reduce`

有一个警察:RuboCop::Cop::Lint::NextWithoutAccumulator.谁能解释一下这个cop是做什么用的,它应该如何以什么方式改进代码?它是否提高了可读性和效率?githubcode. 最佳答案 让我们考虑文档中的示例代码:#badresult=(1..4).reduce(0)do|acc,i|nextifi.odd?acc+iend如果您在控制台中尝试此操作,您将获得nil对象的NoMethodError异常。这是因为如果没有指定对象,next将“返回”nil。您可以将其视为迭代器的return。对于r

ruby - Rubocop:使用 next 跳过迭代

我正在从Rubocop获取Style/Next:Usenexttoskipiteration.用于执行类似操作的代码(使用一个非常人为的示例):tasks_running=[{name:'task1',done:false},{name:'task2',done:false}]tasks_done=[]tasks_running.eachdo|task|iftask[:done]unlesstasks_done.include?tasktasks_done我是仅在嵌套条件中使用next来跳过迭代。我不太明白如何满足这个标准。 最佳答案

ruby - 为什么 Ruby 中的 `next` 方法会引发 SyntaxError 而 `next!` 或 `self.next` 不会在猴子修补 String 类时引发语法错误?

下面的代码工作正常:classStringdeffoonext!endendputs'hh'.foo#hi这个也很好用:classStringdeffooself.nextendendputs'hh'.foo#hi但这个不是:classStringdefbarnextendend#Invalidnext(SyntaxError)为什么Ruby在此处使用next关键字并引发SyntaxError,即使我正在处理String类? 最佳答案 对于前两个示例,Ruby解析器确定您正在调用方法,因为不能那样使用next关键字。对于第三个示例,

ruby - ruby -run 有什么作用?它是如何工作的?

我见过这个用来启动一个进程:ruby-run它有什么作用?文档位于何处? 最佳答案 它在外观上有点误导...标志不是-run就像动词run一样,而是-r要求theun.rbfile来自标准库,accordingtodocumentation,包含:UtilitiestoreplacecommonUNIXcommandsinMakefilesetc-r标志允许您require在程序开始执行之前从命令行创建一个库。参见ruby--help对于命令行标志(我怀疑你已经这样做了)。 关于ruby