在默认数据源中找不到模型的 cakephp 表
我的数据库中只有一个名为ficha_seg"的表.我的模型文件名为Ficha.php",控制器名为FichasController.php".
那么,为什么我会收到错误:
错误:在默认数据源中找不到模型 Ficha 的表 fichas.
像这样配置我的控制器的 index() 方法后:
公共函数 index() {$this->set('ficha_seg', $this->Ficha->find('all'));}
解决方案 默认情况下,模型使用模型类名的小写复数形式作为数据库表名.
如果你需要为你的模型使用另一个表名,你可以使用useTable
属性:
class Ficha 扩展 AppModel{公共 $useTable = 'ficha_seg';}
参见 http://book.cakephp.org/2.0/en/models/模型属性.html#usetable和Cookbook 中的模型约定>
I have just a table on my database named "ficha_seg". The name of my model file is "Ficha.php" and the name of the controller is "FichasController.php".
So, why i'm getting the error:
Error: Table fichas for model Ficha was not found in datasource default.
after configured my index() method of controller like this:
public function index() {
$this->set('ficha_seg', $this->Ficha->find('all'));
}
解决方案
By default, the model uses the lowercase, plural form of the model’s class name for the database table name.
If you need to use another table name for your model, you can use the useTable
attribute:
class Ficha extends AppModel
{
public $useTable = 'ficha_seg';
}
See http://book.cakephp.org/2.0/en/models/model-attributes.html#usetable and Model conventions in the Cookbook
相关文章