蛋糕PHP - 蛋糕烘焙所有错误(说数据库中缺少$default.php,但它存在)



我正在尝试用蛋糕烘烤所有东西,但它返回各种错误。它说数据库中的默认值.php找不到,但实际上它存在于文件中,而且,几天前我烘焙了一些模型等,它工作正常。这是输出:

C:wamp64wwwWarehouseManagementAppappConsole>cake bake all
Warning Error: Use of undefined constant TESTS - assumed ‘TESTS’ (this will throw an Error in a future version of PHP) in [C:wamp64wwwWarehouseManagementApplibCakeConsoleTaskCollection.php, line 94]
Welcome to CakePHP v2.10.19 Console
App : Console
Path: C:wamp64wwwWarehouseManagementAppappConsole
Bake All
Warning Error: include_once(C:wamp64wwwWarehouseManagementAppappConsoleConfigdatabase.php): failed to open stream: No such file or directory in [C:wamp64wwwWarehouseManagementApplibCakeModelConnectionManager.php, line 67]
Warning Error: include_once(): Failed opening ‘C:wamp64wwwWarehouseManagementAppappConsoleConfigdatabase.php’ for inclusion (include_path=‘C:wamp64wwwWarehouseManagementApplib;.;C:phppear’) in [C:wamp64wwwWarehouseManagementApplibCakeModelConnectionManager.php, line 67]
Error: The datasource configuration “default” was not found in database.php
#0 C:wamp64wwwWarehouseManagementApplibCakeModelConnectionManager.php(91): ConnectionManager::_getConnectionObject(‘default’)
#1 C:wamp64wwwWarehouseManagementApplibCakeConsoleCommandTaskModelTask.php(956): ConnectionManager::getDataSource(‘default’)
#2 C:wamp64wwwWarehouseManagementApplibCakeConsoleCommandTaskModelTask.php(893): ModelTask->getAllTables(‘default’)
#3 C:wamp64wwwWarehouseManagementApplibCakeConsoleCommandTaskModelTask.php(983): ModelTask->listAll(‘default’)
#4 C:wamp64wwwWarehouseManagementApplibCakeConsoleCommandBakeShell.php(150): ModelTask->getName(‘default’)
#5 C:wamp64wwwWarehouseManagementApplibCakeConsoleShell.php(459): BakeShell->all()
#6 C:wamp64wwwWarehouseManagementApplibCakeConsoleShellDispatcher.php(222): Shell->runCommand(‘all’, Array)
#7 C:wamp64wwwWarehouseManagementApplibCakeConsoleShellDispatcher.php(66): ShellDispatcher->dispatch()
#8 C:wamp64wwwWarehouseManagementAppappConsolecake.php(47): ShellDispatcher::run(Array)
#9 {main}

另外,这是我的数据库.php文件:

class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'modules',
'prefix' => '',
// ‘encoding’ => ‘utf8’,
);
public $test = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'password',
'database' => 'test_database_name',
'prefix' => '',
//'encoding' => 'utf8',
);
}

查看包含错误,它们告诉您找不到您的database.php文件,如果您查看路径,您会发现它位于Console/Config文件夹中,这当然是错误的位置。

这是因为 shell 将使用当前工作目录作为应用程序路径,因此要么从app文件夹中运行控制台,即Consolecake bake all,要么使用-app参数将路径传递给您的app文件夹:

cake bake all -app "C:wamp64wwwWarehouseManagementAppapp"

蛋糕壳也告诉你这一点(cake --help(,并向你展示相关的路径。

参见

  • Cookbook> Shells, Tasks & Console Tools

最新更新