Мое приложение настроено в папке d: / servers / htdocs / myapp
Нет, каталог приложения (содержащий папку config
): D:\servers\htdocs\myapp\app\
.
Причина в том, что он пытается найти файл database.php в «d: / servers / htdocs / myapp / config /», а правильный путь - «d: /servers/htdocs/myapp/app/config/database.php». '
Вы находитесь не в том каталоге, поэтому он не может найти конфигурацию вашей базы данных.
Я написал тестовую оболочку в d: / servers / htdocs / myapp / vendor / shells
Переместите оболочку из папки глобальных поставщиков на D:\servers\htdocs\myapp\vendors\shells
в папку поставщиков приложения на D:\servers\htdocs\myapp\app\vendors\shells
и попробуйте снова.
(Примечание: на самом деле я не уверен, где должна находиться папка глобальных поставщиков, когда у вас есть настройка, в которой каталоги тортов и приложений отделены друг от друга, но вы определенно должны быть в каталоге приложений при выполнении команд и не каталог myapp
, который вы используете.)
Если вы добавите D:\libs\cake\console\
в переменную окружения PATH (не забывая закрыть все процессы cmd.exe
впоследствии), вы просто сможете выполнить следующее:
D:\servers\htdocs\myapp\app> cake report
(из каталога приложения)
В противном случае вам нужно будет ввести полный относительный или абсолютный путь к исполняемому файлу консоли и / или предоставить CakePHP абсолютный путь к каталогу приложения (если вы не в нем):
D:\servers\htdocs\myapp\app> ..\..\..\..\libs\cake\console\cake report
D:\servers\htdocs\myapp\app> \libs\cake\console\cake report
D:\libs\cake\console> cake -app D:\servers\htdocs\myapp\app report
D:\> libs\cake\console\cake -app D:\servers\htdocs\myapp\app report
и т.д ...
Надеюсь, вы поймете, почему простое добавление правильной папки в PATH
делает все намного проще. :)