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