1

我有一个简单的问题,我不知道如何解决。我使用现有的数据库,其中的表与 cakePHP 约定不匹配,我必须让 cakePHP 使用它。

例如,我在 sql db 中有一个名为“ItiConf”的表(而不是按照约定的 iti_confs)。

我的模型ItiConfModel.php

class ItiConf extends AppModel { 
}

我的控制器ItiConfsController.php

class ItiConfsController extends AppController {
//...
}    

我试图在 app/Config/bootstrap.php 文件中创建自己的 Inflector::rules,但它不起作用,我仍然有以下错误:

*Error: Table iti_confs for model ItiConf was not found in datasource default.*

您对这个问题以及需要的相关变形器规则的合成器有任何想法或提示吗?

提前谢谢你!

插图07。

4

1 回答 1

0

虽然 Cake 有它的约定,但它并不要求使用它们。在这种情况下,尝试使用$useTable属性来更改模型使用的表,而不是修改 Inflector 规则:

class ItiConf extends AppModel { 

    public $useTable = 'ItiConf';

}

更多信息在这里:http ://book.cakephp.org/2.0/en/models/model-attributes.html#usetable

于 2014-12-05T17:50:35.960 回答