Загрузить путь в Rails? - PullRequest
1 голос
/ 05 августа 2010

В руководствах по Rails есть этот код для загрузки пути.

  $LOAD_PATH << path
  ActiveSupport::Dependencies.load_paths << path
  ActiveSupport::Dependencies.load_once_paths.delete(path)

Первый, который я понимаю. Это для рубина, чтобы знать, где требовать файлы.

Но что означает второй и третий?

Ответы [ 2 ]

2 голосов
/ 05 августа 2010

Да, первая строка предназначена для самого Ruby (и $: тоже). Второй очень похож на первый, но для ActiveSupport.

load_once_paths Массив путей, с которых Rails будет автоматически загружаться только один раз. Все элементы этого массива также должны быть в load_paths.

load_paths Массив дополнительных путей для добавления к пути загрузки. По умолчанию все пути приложения, lib, vendor и mock включены в этот список.

Итак, если вам нужно перезагружать зависимости при каждом новом запросе, не добавляйте их в каталог load_once_paths.

0 голосов
/ 14 сентября 2011

В Rails 3.0 load_once_paths был переименован в autoload_once_paths, а load_paths был переименован в autoload_once_paths.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...