CakePHP:尝试生成架构时出错

我正在尝试开始使用CakePHP架构:app / Console / cake架构生成

我收到以下错误

Welcome to CakePHP v2.3.0 Console
---------------------------------------------------------------
App : app
Path: /Applications/MAMP/htdocs/mysite/app/
---------------------------------------------------------------
Cake Schema Shell
---------------------------------------------------------------
Error: Database connection "MysqL" is missing,or Could not be created.

这很令人困惑,因为站点运行正常,因此Config / database.PHP中的DB凭据是正确的.

更新:
因为我正在使用MAMP,所以我在$defualt数组中的Config / database.PHP添加了以下内容

'unix_socket' => '/Applications/MAMP/tmp/MysqL/MysqL.sock',

现在我没有得到原始错误,而是一些新错误

Welcome to CakePHP v2.3.0 Console
---------------------------------------------------------------
App : app
Path: /Applications/MAMP/htdocs/mysite/app/
---------------------------------------------------------------
Cake Schema Shell
---------------------------------------------------------------
Generating Schema...
Notice Error: Schema generation error: invalid column type enum('normal','unlimited_time','admin','extra_time') for Attempt.type does not exist in DBO in [/Applications/MAMP/htdocs/mysite/lib/Cake/Model/CakeSchema.PHP,line 616]

Notice Error: Schema generation error: invalid column type enum('in_progress','complete','canceled') for Attempt.status does not exist in DBO in [/Applications/MAMP/htdocs/mysite/lib/Cake/Model/CakeSchema.PHP,line 616]

Notice Error: Schema generation error: invalid column type enum('MC','FI','CS','CQ','TF') for AttemptedQuestion.type does not exist in DBO in [/Applications/MAMP/htdocs/mysite/lib/Cake/Model/CakeSchema.PHP,line 616]

Notice Error: Schema generation error: invalid column type enum('1','2','3') for Category.category_order does not exist in DBO in [/Applications/MAMP/htdocs/mysite/lib/Cake/Model/CakeSchema.PHP,line 616]

Error: Table choices for model Choice was not found in datasource default.
#0 /Applications/MAMP/htdocs/mysite/lib/Cake/Model/Model.PHP(3217): Model->setSource('choices')
#1 /Applications/MAMP/htdocs/mysite/lib/Cake/Model/CakeSchema.PHP(260): Model->getDataSource()
#2 /Applications/MAMP/htdocs/mysite/lib/Cake/Console/Command/SchemaShell.PHP(149): CakeSchema->read(Array)
#3 /Applications/MAMP/htdocs/mysite/lib/Cake/Console/Shell.PHP(388): SchemaShell->generate()
#4 /Applications/MAMP/htdocs/mysite/lib/Cake/Console/Shelldispatcher.PHP(199): Shell->runcommand('generate',Array)
#5 /Applications/MAMP/htdocs/mysite/lib/Cake/Console/Shelldispatcher.PHP(67): Shelldispatcher->dispatch()
#6 /Applications/MAMP/htdocs/mysite/app/Console/cake.PHP(33): Shelldispatcher::run(Array)
#7 {main}

看起来像CakePHP对ENUM领域感到害怕.

最佳答案
正如这里所描述的那样明确……

Cakephp + enum support : unable to save or select enum 0 and 1

… CakePHP不喜欢ENUM字段.看起来与架构相关的控制台工具将在那里与它们一起使用.

相关文章

mysql外键怎么用?Mysql数据库外键的使用介绍(图文+视频)
mysql怎么创建视图?(图文+视频)
怎么修改Mysql数据表中的视图
phpMyadmin导出备份数据库文件的步骤详解(附视频)
怎么给Mysql数据表添加外键?(图文+视频)
phpMyadmin导入数据库sql文件的方法详解(附视频)