草庐IT

请C++ cout输出解释

全部标签

ruby - 在 RSpec 测试期间抑制控制台输出

我正在测试将一些消息(带有puts、p警告等)放在控制台上的类。我只是想知道在RSpec测试期间是否有任何抑制此输出的能力? 最佳答案 我通过将$stout重定向到文本文件来抑制类中的puts输出。这样,如果我出于任何原因需要查看输出,它就在那里,但不会混淆我的测试结果。#spec_helper.rbRSpec.configuredo|config|config.before(:all,&:silence_output)config.after(:all,&:enable_output)endpublic#Redirectsstde

ruby - 从 Ruby 运行命令显示和捕获输出

是否有某种方法可以从Ruby运行(shell)命令显示并捕获输出?也许在一些gem的帮助下?我所说的显示的意思不是在最后打印它,而是在它出现时打印出来,这样用户就可以在运行缓慢的命令时得到反馈。 最佳答案 你可以像这样运行系统调用:`sleep--help`或者像这样system"sleep--help"或者%x{sleep--help}如果是system,它将打印输出并返回true或nil,其他两种方法将返回输出附言哦。它是关于实时显示。所以。你可以使用这样的东西:system("ruby","-e100.times{|i|pi;

ruby-on-rails - 在救援中输出错误 (Ruby/Rails)

只是一个简短的问题。我在文档中找不到它。如果我使用标准的begin...rescue,我如何将所有错误或堆栈跟踪打印到rescue中?例如:begindoxrescueputserrorsend有什么想法吗? 最佳答案 我知道至少有两种方法可以得到错误。第一种是使用全局变量:$!始终设置为发生的最后一个错误。第二种是在救援时明确捕获错误:begin#dosomethingthatfails...rescue=>error#errorand$!areequivalenthereend任何一个都可以让您使用以下任一方法检查或打印出回溯:

ruby - 很好地格式化输出到控制台,指定选项卡的数量

我正在生成一个将信息输出到控制台的脚本。该信息是某种具有值的统计数据。非常像哈希。所以一个值的名称可能是8个字符长,另一个是3个字符。当我循环输出带有两个\t的信息时,一些列没有正确对齐。例如输出可能是这样的:longvaluename14short12little13tiny123421longnameagain912421我希望所有值都正确排列。现在我正在这样做:puts"#{value_name}-\t\t#{value}"对于长名称,我怎么能说只使用一个制表符呢?或者有其他解决方案吗? 最佳答案 假设您知道最大长度不超过20

ruby - 了解 ruby​​-prof 输出

我在我的一个程序中运行了ruby​​-profiler。我试图弄清楚每个字段的含义。我猜一切都是CPU时间(而不是挂钟时间),这太棒了。我想了解“---”代表什么。那里有某种堆栈信息吗?调用a/b是什么意思?ThreadID:81980260TotalTime:0.28%total%selftotalselfwaitchildcallsName--------------------------------------------------------------------------------0.280.000.000.285/6FrameParser#receive_data

ruby - 如何使用 RVM 更新 Ruby 解释器?

前段时间我安装了带有几个版本的Ruby-interpreters的RVM。我该如何更新它,因为新版本已经发布了?我只找到一种方法:rvminstall1.9.2-rc1&&rvmremove1.9.2-preview1,但我的gem丢失了。我可以不时更新分支吗?我没有在文档中找到任何提示。 最佳答案 使用rvmupgrade1.9.2-preview11.9.2-rc1命令或观看此screencast 关于ruby-如何使用RVM更新Ruby解释器?,我们在StackOverflow上找

ruby-on-rails - Ruby on Rails 复数( Controller )和单数(模型)约定 - 解释

根据RubyonRails惯例,Controller名称采用复数形式,而模型名称采用单数形式。示例:一个用户Controller,但是一个用户模型。railsgeneratecontrollerUsersrailsgeneratemodelUsername:stringemail:string现在打开迁移文件classCreateUsers这里的表名是复数(users)所以我的问题是-为什么表名是复数(用户),即使模型名称是单数(用户)? 最佳答案 RubyonRails遵循语言惯例。这意味着一个模型代表一个用户,而数据库表由许多用

ruby-on-rails - Rspec 输出格式 : Documentation

当我使用rakerspec运行rspec并且我的测试不正常时,我收到一条错误消息。但是,当我的测试正常时,我只会得到“..”。没有其他输出。我怎样才能让它打印出类似的东西:AUser....canonlyhaveonenameAUser....can... 最佳答案 来自rspec帮助页面$rspec--helpUsage:rspec[options][filesordirectories]-f,--formatFORMATTERChooseaformatter[p]rogress(default-dots)[d]ocumentat

Ruby 将数组的内容输出为逗号分隔的字符串 Ruby

有没有更正确的方法将数组的内容输出为逗号分隔的字符串@emails=["joe@example.com","Peter@example.com","alice@example.com"]@emails*","=>"joe@example.com","Peter@example.com","alice@example.com"这可行,但我相信一定有更优雅的解决方案。 最佳答案 你试过这个吗:@emails.join(",") 关于Ruby将数组的内容输出为逗号分隔的字符串Ruby,我们在S

ruby - 更好的 ruby​​ markdown 解释器?

我正在尝试找到一个我可以在rakefile中使用的markdown解释器类/模块。到目前为止,我找到了maruku,但我对Beta版有点担心。有人对maruku有任何问题吗?或者,您知道更好的选择吗? 最佳答案 我每天使用Maruku处理100,000-200,000个文档。主要是论坛帖子,但我也在wiki页面等大型文档上使用它。Maruku比BlueCloth快得多,而且它不会在大文档上阻塞。全是Ruby,虽然代码不是特别容易扩展和扩充,但它是可行的。我们对Markdown方言进行了一些调整和附加功能。如果您想要纯Ruby的东西,