Почему я не могу требовать файл в родительском каталоге в ruby?

Обратите внимание, что я не использую Rails. У меня есть такая структура каталогов, как :

foo/
bar/
base_classes/
base_classes.rb

base_classes.rb:

 Dir.glob(File.expand_path(File.join("base_classes/config/constants", "*.rb"))) { |file| require file}
 Dir.glob(File.expand_path(File.join("base_classes", "*.rb"))) { |file| require file}

когда я нахожусь в этом корневом каталоге

>> require 'base_classes' #=> true
>> Card.load!
[stuff happens]

Но когда я нахожусь в foo / и выполняю одно из следующих действий:

>> require '../base_classes' #=> true
>> require File.expand_path("../base_classes.rb") #=> true
>> require File.expand_path("../base_classes") #=> true
>> Card.load!
>> NameError: uninitialized constant Card
8
задан bergyman 19 July 2011 в 20:37
поделиться