在少数项目中我们不需要数据库,那么我们如何在本地机器上设置 cakephp 而无需修改数据库配置?现在我做了什么......我创建了数据库并修改了配置文件。但是我的数据库没有表,它只是浪费数据库......所以请提出更好的方法来做到这一点。
先感谢您..
在少数项目中我们不需要数据库,那么我们如何在本地机器上设置 cakephp 而无需修改数据库配置?现在我做了什么......我创建了数据库并修改了配置文件。但是我的数据库没有表,它只是浪费数据库......所以请提出更好的方法来做到这一点。
先感谢您..
在 CakePHP 2.3.x 中,我只需在数据库配置中使用一个空字符串作为数据源,它就可以正常工作。
数据库配置(app/Config/database.php)几乎是空的,它看起来像这样:
class DATABASE_CONFIG {
public $default = array(
'datasource' => '',
);
}
你必须告诉你的 AppModel 不要使用数据库表,否则你会得到一个错误:“找不到数据源类”。仅在后代模型中设置 $useTables 是不够的。
class AppModel extends Model {
public $useTable = false;
}
我还没有遇到任何问题。
无论您不使用表,Cakephp 实际上都会尝试连接到数据库,因此使用它
class MyModel extends AppModel {
public $useTable = false;
}
这只是一个错误,在 cakephp 上创建应用程序是小菜一碟。为了在没有数据库的情况下开始开发,您必须执行以下步骤。
在 app/Model/Datasource/Dbo/ 中创建文件 DboFakeDboSource.php 并将以下代码放入其中
class DboFakeDboSource extends DboSource {
function connect() {
$this->connected = true;
return $this->connected;
}
function disconnect() {
$this->connected = false;
return !$this->connected;
}
}
下一步是告诉 cakephp 默认使用 dbo 源。去改变database.php中的默认连接是这样的
var $default = array(
'driver' => 'FakeDboSource'
);
第三步是确定 $useTable = false; 包含在每个模型中,因此将其添加到 AppModel.php
You can just leave default datasourse settings empty in database.php and for Models you use, specify that it doesn't need corresponding table in DB like following:
class MyModel extends AppModel {
public $useTable = false;
}