Ich versuche es auszuführen cake bake all
funktioniert aber nicht, weil ich denke, dass das Problem mit einem Pfad meines Kuchenprojekts zusammenhängt. Error: The datasource configuration "default" was not found in database.php
. Die Datei database.php befindet sich in diesem Pfad ExemploCake/app/Config/database.php
.
Ich verwende: Ubuntu mit Lampp und CakePHP 2.7
Config database.php
<?php
class DATABASE_CONFIG {
public $default = array(
"datasource" => "Database/Mysql",
"persistent" => false,
"host" => "localhost",
"login" => "root",
"password" => "",
"database" => "cakePHP",
"prefix" => "",
"encoding" => "utf8"
);
public $test = array(
"datasource" => "Database/Mysql",
"persistent" => false,
"host" => "localhost",
"login" => "root",
"password" => "",
"database" => "cakePHP",
"prefix" => "",
"encoding" => "utf8"
);
}
?>
Ausnahme
root@fernando-HP-15-Notebook-PC:/opt/lampp/htdocs/ExemploCake/app/Console# ./cake bake all
Welcome to CakePHP v2.7.0 Console
---------------------------------------------------------------
App : app
Path: /opt/lampp/htdocs/ExemploCake/app/
---------------------------------------------------------------
Bake All
---------------------------------------------------------------
Error: Database connection "Mysql" is missing, or could not be created.
#0 /opt/lampp/htdocs/ExemploCake/lib/Cake/Model/ConnectionManager.php(105): DboSource->__construct(Array)
#1 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/Command/Task/ModelTask.php(952): ConnectionManager::getDataSource("default")
#2 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/Command/Task/ModelTask.php(889): ModelTask->getAllTables("default")
#3 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/Command/Task/ModelTask.php(979): ModelTask->listAll("default")
#4 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/Command/BakeShell.php(150): ModelTask->getName("default")
#5 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/Shell.php(444): BakeShell->all()
#6 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/ShellDispatcher.php(212): Shell->runCommand("all", Array)
#7 /opt/lampp/htdocs/ExemploCake/lib/Cake/Console/ShellDispatcher.php(66): ShellDispatcher->dispatch()
#8 /opt/lampp/htdocs/ExemploCake/app/Console/cake.php(47): ShellDispatcher::run(Array)
#9 {main}
Antworten:
0 für die Antwort № 1Lauf bake
von deiner app
Mappe. So:
cd /opt/lampp/htdocs/ExemploCake/app
./Console/cake bake all
Bearbeitung basierend auf dem aktualisierten Beitrag:
Der Fehler bedeutet, dass pdo_mysql nicht für CLI aktiviert ist. Ermitteln Sie also die php.ini für CLI und aktivieren Sie sie.
Es scheint, dass Sie XAMPP verwenden. Sie sparen sich viel Ärger, wenn Sie einfach die von Ubuntu selbst gelieferten Pakete verwenden. Im Internet finden Sie tonnenweise Anleitungen dazu.