我是
Ruby的新手,并试图学习它.我正在使用最新的Ruby版本(2.4.1)和交互式Ruby Shell.
我在Dir课上遇到过child方法.我试过了from the documentation的例子:
Dir.children("testdir") #=> ["config.h","main.rb"]
但它似乎不起作用,因为我收到以下消息:
undefined method `children' for Dir:Class
我错过了什么?
解决方法
这似乎是某种文档混乱.
Dir.children方法随Feature #11302引入Ruby并且是comitted to trunk.但是,似乎添加此方法的补丁实际上并没有向后移植到Ruby 2.4,因为dir.c
of Ruby 2.4.1没有提到该方法.目前还不清楚为什么这个方法的文档出现在http://ruby-doc.org/
无论如何,看来你对这种方法运气不佳.但是,您可以在发布的版本中使用以下等效代码:
Dir.entries('testdir') - [".",".."]
它将在Ruby HEAD中返回与Dir.children(‘testdir’)完全相同的值.