jjzjj

exception

全部标签

ruby-on-rails - 在 Rails 项目中保留自定义异常定义的常规位置是什么?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion当像这样创建自己的自定义异常时classThingExploded保存这些东西的好地方在哪里?我在考虑lib/exceptions.rb...并且还在考虑以某种方式将它们放在更靠近使用它们的代码处是否更合适。

ruby - 最佳实践 : Using system supplied or custom exceptions for error conditions in ruby?

在ruby​​中编写一个相当简单的命令行工具我需要报告有关命令行参数中的错误的有意义的消息,或者与此相关的程序中的其他错误情况。(未找到输入文件,输入格式无效等)现在我只是在检测参数列表中的错误时用合理的描述引发ArgumentError。这是一种好的做法,还是我也冒着用这种方法隐藏编程错误的风险?换句话说,ruby中系统定义的异常是为应用程序使用而设计的,还是我们应该始终创建自己的异常来报告非系统错误?编辑:例如,如果我使用错误数量的参数调用方法,ruby会引发ArgumentError。这是一个编程错误,我想用堆栈跟踪和所有信息来告知它。然而,当我的程序输入不正确时,我可能想给用户

Ruby 异常或错误?

我注意到在Ruby的异常层次结构中,有ArgumentError这样的“错误”,也有SignalException这样的“异常”。是否有特定的命名异常的做法?提前致谢,嗯。 最佳答案 查看thelistofRubyexceptions,SignalException是唯一一个名为*Exception的;其他一切都是XXXError(SystemExit和fatal除外)。如果有的话,惯例是将您的异常命名为FooError。我无法找到SignalException未命名为SignalError的具体原因。

ruby-on-rails - 这个 Rails4 错误是什么意思?致命的 : exception reentered . .. `rescue in rollback_active_record_state!'

我在我的Rails4约会安排应用程序中遇到了几个错误,我似乎无法更正或找出根本原因。我的种子文件总是因众所周知的“错误,堆栈级别太深”而中断。但是当我运行我认为它正在中断的方法时,我得到了这个不同的错误:Seedingtimeslotsforworkdayno.1(0.5ms)SAVEPOINTactive_record_1(0.5ms)ROLLBACKTOSAVEPOINTactive_record_1fatal:exceptionreenteredfrom/Users/rskelley/.rvm/gems/ruby-2.0.0-p481/gems/activerecord-4.1.

ruby-gmail : Uncaught exception: 534-5. 7.14 <https ://accounts. google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbtMk

我可以手动登录我的帐户,但是当我使用ruby​​-gmail时,它会引发错误这是我的代码require'gmail'gmail=Gmail.new("myname@gmail.com","passwd")gmail.deliverdoto"rorocodeath@gmail.com"subject"HavingfuninPuertoRico!"text_partdobody"Textofplaintextmessage."endhtml_partdocontent_type'text/html;charset=UTF-8'body"Textofhtmlmessage."endadd_f

Ruby 使用/附加字符串参数重新引发异常

情况是这样的。我希望doStuff()中的所有异常通过代码冒泡,以便在更高级别处理它们。我还想记录在更高级别的doStuff()中发生任何异常的频率,目前正在这样做:begindoStuff()rescueException=>raisee,"specificerrortologinadb"doStuff代码抛出了几十个异常,我想捕获这些事件中的每一个以放入数据库中。有一个doStuff2(),它也可以抛出相同的指令,我想知道它们来自哪个函数。添加额外的字符串,似乎改变了异常本身,我失去了原始异常所具有的所有漂亮的格式和跟踪信息。关于如何重新引发原始异常,同时跟踪doStuff()中发

ruby-on-rails - 我的抓取 "stack"应该如何处理 404 错误?

我有一个rake任务,负责对数百万个URL进行批处理。因为这个过程需要很长时间,我有时会发现我尝试处理的URL不再有效——404、站点已关闭等等。当我最初写这篇文章时,基本上只有一个站点在处理过程中会不断崩溃,所以我的解决方案是使用open-uri,挽救产生的任何异常,稍等片刻,然后重试.这在数据集较小时效果很好,但现在时间过去了很多,我发现URL不再存在并产生404。使用404的情况,当这种情况发生时,我的脚本会停在那里并无限循环——显然很糟糕。我应该如何处理页面未成功加载的情况,更重要的是,这如何适应我构建的“堆栈”?我对这个和Rails很陌生,所以欢迎就我在这个设计中可能出错的地

ruby-on-rails - 如何使用 Rails 2.1 中的 ExceptionNotifier 插件修复 'Unprocessed view path found' 错误?

将Rails1.2网站升级到2.1后,ExceptionNotifierplugin不再有效,提示这个错误:ActionView::TemplateFinder::InvalidViewPath:Unprocessedviewpathfound:"/path/to/appname/vendor/plugins/exception_notification/lib/../views".Setyourviewpathswith#append_view_path,#prepend_view_path,or#view_paths=.是什么原因造成的,我该如何解决?

ruby - 如何处理不知道 Ruby 中的库方法可以引发哪些异常?

这是一个比较宽泛的问题,但这是我在使用Ruby编程时不断遇到的问题。我主要来自C和Java背景,当我使用库函数或方法时,我会查看文档并查看它在错误时返回什么(通常在C中)或它可以抛出哪些异常(在Java中)。在Ruby中,情况似乎完全不同。刚才我需要解析从服务器接收到的一些JSON:data=JSON.parse(response)写完这段代码我首先想到的自然是,如果输入不好怎么办?parse是否会在出错时返回nil,或者引发一些异常,如果是,是哪些异常?我检查了文档(http://flori.github.com/json/doc/JSON.html#M000022)并简单地看到:“

找出具体例外

对缺乏信息表示歉意...有没有办法找出导致呼吁引发异常的特定例外?目前,我正在抓住所有例外捕获(异常E)但是我知道这根本不是很好的做法。从例外情况下,有没有办法知道引起问题的特定问题是什么,所以我可以更详细?看答案您可以使用上面的不同方法获得更多特定异常的信息。在这里我正在使用System.Diagnostics.Debug在VisualStudio的输出控制台中打印的类。在您的捕获块中:usingSystem.Diagnostics;try{//dostuff}catch(Exceptione){Debug.WriteLine(e.GetType());//Displaysthetypeof