Почему при запуске [rake db: migrate] выполняется проверка синтаксиса для задач rake в каталоге lib / tasks? - PullRequest
1 голос
/ 04 марта 2009

У меня есть файл задач rake для приложения RubyOnRails, который находится в каталоге lib / tasks. Запуск [rake db: migrate VERSION = 0], похоже, заставляет компилятор проверять синтаксис в файлах lib / tasks. Если есть файл с неправильным синтаксисом, то [rake db: migrate] не запускается. Зачем? Так что, если у меня плохой файл в lib / tasks. Что здесь происходит? Спасибо.

Ответы [ 2 ]

2 голосов
/ 05 марта 2009

Когда запускается rake, он загружает все .rake файлы в lib/tasks, прежде чем ищет задачу, для которой он был задан. Он загружает все файлы, а не останавливается, когда находит требуемую задачу, поскольку задачи могут быть переопределены файлами позже в порядке загрузки.

Вы можете не загружать их все, указав нужный rakefile:

rake mytask --rakefile lib/my_task.rake
1 голос
/ 04 марта 2009

Когда Rake запускается, он автоматически загружает все файлы .rake в вашу папку lib/tasks. Когда он загружает эти задачи, если у вас есть синтаксическая ошибка, он будет перехвачен.

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