Ruby on rails ruby代码中nil测试的关键
我在ruby代码中有一个关键点(摘自): 当我使用ruby命令运行此脚本时,它会打印:Ruby on rails ruby代码中nil测试的关键,ruby-on-rails,ruby,Ruby On Rails,Ruby,我在ruby代码中有一个关键点(摘自): 当我使用ruby命令运行此脚本时,它会打印: Hello World! Goodbye World. Come back soon. Hello Zeke! Goodbye Zeke. Come back soon. Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]! Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]
Hello World!
Goodbye World. Come back soon.
Hello Zeke!
Goodbye Zeke. Come back soon.
Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]!
Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]. Come back soon.
...
ri20min.rb:15:in `say_hi': undefined method `elseif' for #<MegaGreeter:0x00000001a2d4a0 @names=nil> (NoMethodError)
from ri20min.rb:54:in `<main>'
但是这个错误让我很沮丧!
似乎nil对象没有nil方法!
如何修改此代码以正确运行。ruby中没有
elseif
,但是有elsif
ruby中没有elseif
,但是ruby中有elsif没有elseif
,但是ruby中有elsif
没有elseif
,但是还有elsif
ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您读过错误消息了吗?在错误消息中,它在哪里说nil
没有nil?
方法?无法理解的方法名称不是nil?
,它是elseif
,接收器不是nil
,它是MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说nil
没有nil?
方法?无法理解的方法名称不是nil?
,它是elseif
,接收器不是nil
,它是MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说nil
没有nil?
方法?无法理解的方法名称不是nil?
,它是elseif
,接收器不是nil
,它是MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说nil
没有nil?
方法?无法理解的方法的名称不是nil?
,它是elseif
,接收者不是nil
,它是MegaGreeter
的一个实例。我知道了。只要将elseif更改为elsif。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。
Hello World!
Goodbye World. Come back soon.
Hello Zeke!
Goodbye Zeke. Come back soon.
Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]!
Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]. Come back soon.
...
ri20min.rb:15:in `say_hi': undefined method `elseif' for #<MegaGreeter:0x00000001a2d4a0 @names=nil> (NoMethodError)
from ri20min.rb:54:in `<main>'
if @names.nil?