JavaScript快速入门-07-异常处理与调试
全部标签 我想进入Jekyll的大脑,看看发生了什么,在php中你有get_defined_vars,所以我尝试做一些类似的事情:{%forlocal_variableinlocal_variables%}{{local_variable}}{%endfor%}什么都不输出。我是不是太努力了?ruby或jekyll中有一些方法吗?我只是想四处看看,确保一切设置正确,并可能找出我不知道的变量。 最佳答案 对于Jekyll2.x,您可以使用thisplugin.它允许你做类似{{site|调试}}。从Jekyll3开始,你有{{variable|
我在MacOS10.9.2上运行Railsv4.0.2,一切顺利。当我尝试railsserver时,突然收到一条错误消息,提示缺少gems。我运行bundleinstall,这是输出:Fetchinggemmetadatafromhttps://rubygems.org/.......Fetchingadditionalmetadatafromhttps://rubygems.org/..Usingrake10.1.1Usingi18n0.6.9Usingminitest4.7.5Usingmulti_json1.9.0Usingatomic1.1.16Usingthread_safe
尝试为新项目运行bundle时,遇到以下错误:Installingdebugger(1.2.2)withnativeextensionsGem::Installer::ExtensionBuildError:ERROR:Failedtobuildgemnativeextension.C:/Ruby193/bin/ruby.exeextconf.rbcheckingforrb_method_entry_t.called_idinmethod.h...nocheckingforrb_control_frame_t.method_idinmethod.h...nocheckingforrb_
有没有一种方法可以使用.each以便在对象为nil或空时不会抛出错误(无需添加额外的nil/空白测试?似乎如果我说phonelist.eachdo|phone|如果phonelist为空,则不应执行该block。但在我看来(haml)我有-@myvar.phonelist.eachdo|phone|如果电话列表为空,它会抛出一个NoMethodError。我经常遇到这个问题,并且总是通过为.blank添加显式检查/分支来解决这个问题?但似乎应该有一种更简单的方法来告诉.each空意味着什么都不做。 最佳答案 您可以使用try在nil
我刚刚将我的RVMRuby安装升级到版本2.1.0并尝试捆绑安装时出现以下错误:Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension.Rubyversion2.1.0isnotsupported.***extconf.rbfailed***这个错误当然是不言自明的,但我想知道是否有办法让Debuggergem与最新版本的Ruby一起工作? 最佳答案 看起来1.6.5版增加了对Ruby2.1.0的支持。-按预期工作。更新:由于Ruby2.1.1已经发布,因此应该使用1.6
如果网站返回“503服务不可用”错误,则open-uri会抛出异常。例如:require'open-uri'open('http://www.google.co.uk/sorry/?continue=http://www.google.co.uk/search%3Fq%3Dhello%26oq%3Dhello%26ie%3DUTF-8')#OpenURI::HTTPError:503ServiceUnavailable#...但是,如果您随后在网络浏览器中访问它,它实际上会显示一个带有验证码的页面,而不是错误。我如何确保open-uri不只是将此作为异常抛出,而是实际处理响应并为我提供
我运行的是Ubuntu10.10。我只想调试一个简单的脚本。在花了半天时间试图弄清楚如何做到这一点后,我放弃了。我到底该怎么办?我从Ubuntu存储库安装了ruby-dev我运行了sudogeminstallruby-debug和sudogeminstallruby-debug-ide我尝试了几种不同的方法来完成这项工作。我试过require'ruby-debug'然后在代码的某处设置debugger。但是Ruby找不到ruby-debug。我尝试设置vim-ruby-debugger,这将花费ages来执行:RdebuggermyScript.rb并允许我设置断点,但似乎没有
我似乎无法使用Rails2.3的新accepts_nested_attributes_for工具在RailsView中为belongs_to关系生成嵌套表单。我确实检查了许多可用的资源,看起来我的代码应该可以工作,但是fields_for对我来说是爆炸性的,我怀疑它与如何做有关我配置了嵌套模型。我遇到的错误是一个常见的错误,可能有多种原因:'@account[owner]'isnotallowedasaninstancevariablename下面是涉及的两个模型:classAccount'User',:foreign_key=>'owner_id'accepts_nested_att
我想从管道中排除一个特定的javascript文件(modernizr),因为我希望它单独加载。我想在开头加载Modernizr,并在末尾连接我的其余javascript。有没有办法在3.1的Assets管道中执行与要求相反的操作?IE。排除?提前致谢。亚当。 最佳答案 我选择通过更改来保留链轮的功能//=require_tree到//=require_directory.这会让sprockets自动加载同一目录中的任何文件,但不会进一步加载任何文件夹中的文件。这让我可以将Modernizr.js移动到assets/javascri
我有一个方法可以对Cat模型执行一些操作,如果输入不正确会引发异常:context"hungrycat"doit{expect{eat(what:nil)}.toraise_error}end我想做的是检查这个方法是否改变了猫的状态,就像那样:context"hungrycat"doit{expect{eat(what:nil)}.toraise_error}it{expect{eat(what:nil)}.not_tochange(cat,:status)}end问题在于,由于eat(what:nil)将引发异常,因此第二个it无论如何都会失败。那么,是否可以忽略异常并检查某些条件?