草庐IT

flume代码调试

全部标签

ruby-on-rails - 如何在 RSpec 测试中打开 ActiveRecord 的 SQL 调试日志记录?

我对我的模型进行了一些RSpec测试,我想像在Rails服务器模式中看到的那样打开SQLActiveRecord日志记录。如何做到这一点?我开始我的测试RAILS_ENV=testbundleexecrspecmy/test_spec.rb谢谢 最佳答案 您可以尝试在某处的测试中将ActiveRecord记录器设置为标准输出。如果您正在使用rspec,也许在spechelper中?ActiveRecord::Base.logger=Logger.new(STDOUT) 关于ruby-on

ruby-on-rails - 如何在 Rails 中打印出对象的内容以便于调试?

我想我正在尝试获取与print_r()等效的PHP(打印人类可读);目前原始输出是:ActiveRecord::Relation:0x10355d1c0我该怎么办? 最佳答案 我通常会先尝试.inspect,如果这没有给我想要的结果,我会切换到.to_yaml。classUserattr_accessor:name,:ageenduser=User.newuser.name="JohnSmith"user.age=30putsuser.inspect#=>#putsuser.to_yaml#=>---!ruby/object:Use

ruby - 如何从终端运行 Ruby 代码?

我需要从终端运行几行Ruby代码,但找不到所需的参数。你能解释一下如何做到这一点吗? 最佳答案 如果安装了Ruby,那么rubyyourfile.rb其中yourfile.rb是包含ruby​​代码的文件。或者irb启动交互式Ruby环境,您可以在其中键入代码行并立即查看结果。 关于ruby-如何从终端运行Ruby代码?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/123788

ruby - 在 ruby​​ 1.9 中调试

你们在ruby​​1.9中使用什么进行调试?rdebug似乎不兼容..那里有什么吗? 最佳答案 ruby-debug19不再维护。所有其他答案都已过时。但还有一个选择:debugger来救援!将其放入您的Gemfile:gem'debugger',group:[:development,:test]它只是工作。-它包含在railsGemfile中,因为3.2.something取代ruby-debug19。它具有完全相同的功能并得到积极维护。 关于ruby-在ruby​​1.9中调试,我

ruby - 在 Ruby 中递归列出目录的一行代码?

在Ruby中获取一组目录(不包括文件)的最快、最优化的单行方法是什么?包含文件怎么样? 最佳答案 Dir.glob("**/*/")#fordirectoriesDir.glob("**/*")#forallfiles除了Dir.glob(foo)你也可以写Dir[foo](但是Dir.glob也可以使用一个block,在这种情况下,它将产生每个路径而不是创建一个数组)。RubyGlobDocs 关于ruby-在Ruby中递归列出目录的一行代码?,我们在StackOverflow上找到一

ruby 系统命令检查退出代码

我有一堆ruby​​系统调用,如下所示,我想同时检查它们的退出代码,以便我的脚本在该命令失败时退出。system("VBoxManagecreatevm--nametest1")system("rubytest.rb")我想要类似的东西system("VBoxManagecreatevm--nametest1",0)这可能吗?我已经尝试过类似的方法,但也没有用。system("rubytest.rb")system("echo$?")或`rubytest.rb`exit_code=`echo$?`ifexit_code!=0raise'Exitcodeisnotzero'end

ruby-on-rails - 如何将 link_to 包装在一些 html ruby​​ 代码周围?

如何围绕View代码添加链接?我不知道如何将多行ruby​​代码传递给单个link_to方法。我要找的结果是你点击列,得到显示页面:"image"rescuenil%> 最佳答案 link_totakesablockofcode(>=Rails2.2)它将用作标记的主体。原来如此html-code-here但是我很确定在a标签内嵌套div不是有效的HTML。编辑:根据下面AminAriana的评论添加了=字符。 关于ruby-on-rails-如何将link_to包装在一些htmlrub

ruby - 在 Ruby 中标记已弃用代码的最佳实践?

我想将一个方法标记为已弃用,以便使用它的人可以轻松检查他们的代码并catch进度。在Java中,您设置@Deprecated并且每个人都知道这意味着什么。那么是否有一种首选方法(甚至工具)来标记和检查Ruby中的弃用? 最佳答案 在几乎所有情况下,依赖于库或元编程来弃用都是多余的。只需向rdoc添加注释并调用Kernel#warn方法。例如:classFoo#DEPRECATED:Pleaseuseusefulinstead.defuselesswarn"[DEPRECATION]`useless`isdeprecated.Plea

ruby - (unary) * 运算符在此 Ruby 代码中的作用是什么?

给定Ruby代码line="first_name=mickey;last_name=mouse;country=usa"record=Hash[*line.split(/=|;/)]除了*运算符之外,我了解第二行中的所有内容-它在做什么以及它的文档在哪里?(正如您可能猜到的那样,事实证明搜索这个案例很困难......) 最佳答案 *是splat运算符。它将Array扩展为参数列表,在本例中为Hash.[]方法的参数列表。(更准确地说,它扩展了响应to_ary/to_a或Ruby1.9中的to_a的任何对象。)为了说明,下面两个语句是

ruby - 如何记录 Ruby 代码?

记录ruby​​代码时是否有特定的代码约定?例如我有以下代码片段:require'open3'moduleProcessUtils#Runsasubprocessandapplieshandlersforstdoutandstderr#Params:#-command:commandlinestringtobeexecutedbythesystem#-outhandler:procobjectthattakesapipeobjectasfirstandonlyparam(maybenil)#-errhandler:procobjectthattakesapipeobjectasfirs