我在控制台的命令行中烘焙有问题,只在Postgres数据库上。
我使用:
- Windows
- Cakephp 2.3
- PostgreSQL 8.4.8)我的数据库位于外部服务器(unix)上,其他组件位于本地计算机上
对于我的应用程序,CakePhp检查似乎很好:
- 您的PHP版本是5.2.8或更高版本
- 您的tmp目录是可写的
- FileEngine用于核心缓存。要更改配置,请编辑APP/config/core.php
- 您的数据库配置文件已存在
- Cake能够连接到数据库
当我手动编写MVC代码时,应用程序可以检索数据。
当我使用带有consol的命令行时,我会收到以下消息:
D:'wamp'www'mobilite'app>cake bake
Welcome to CakePHP v2.3.5 Console
---------------------------------------------------------------
App : app
Path: D:'wamp'www'mobilite'app'
---------------------------------------------------------------
Interactive Bake Shell
---------------------------------------------------------------
[D]atabase Configuration
[M]odel
[V]iew
[C]ontroller
[P]roject
[F]ixture
[T]est case
[Q]uit
What would you like to Bake? (D/M/V/C/P/F/T/Q)
> M
---------------------------------------------------------------
Bake Model
Path: D:'wamp'www'mobilite'app'Model'
---------------------------------------------------------------
Use Database Config: (default/components)
[default] >
Error: Database connection "Postgres" is missing, or could not be created.
谢谢你的帮助,
西蒙。
有两件事是错误的:
- 您的数据库连接参数无效。尝试通过命令行进行连接,以验证它们是否正常工作
- 您没有启用postgres驱动程序。检查php.ini文件
在windows 7、iis7.5、PostgreSql 9.4、cakehp2.6.3上遇到了相同的问题我已经在我的程序文件x86/php/php5.3中安装了php5.3,所以我认为它在我的系统中无处不在。。。但我发现只有我的IIS使用它。
在控制台中键入php-ini,它将显示控制台中使用的当前版本我的控制台显示我的php.ini来自C:''Program Files(x86)''IIIS Express''php''v5.5刚刚在这个php.ini 中添加
extension=php_pgsql.dll
extension=php_pdo_pgsql.dll
所有东西都在上运行