2014-10-10 43 views
0

我有一个模型(CrewModel.php):CakePHP的不尊重模型配置

<?php 
App::uses('AppModel', 'Model'); 
class Crew extends AppModel { 
    public $useTable = 'crew23424'; 

    public $validate = array(
     'crew_id' => array('rule' => 'isUnique') 
    ); 

    function __construct() 
    { 
     echo "asd"; exit; 
    } 
    public function save(){ 
     echo "exit"; 
     exit; 
    } 
    public function beforeSave() 
    { 
     echo "exit"; 
     exit; 
    } 
} 

但我的模型(useTable)配置的不尊重,蛋糕仍然使用表名“船员”当我做var_dump($this->Crew);我有如下的回复:http://pastebin.com/2QsFeUQa

我的函数没有被执行(save()beforeSave() ......当然,当我执行$this->Crew->save()等)

如何使它工作?

回答

0

在CakePHP中,如果我们没有为我们的表定义模型,并仍然使用 $this->Model->query()或与模型相关的内容执行查询。 CakePHP将为我们创建模型对象。

因此,您必须根据CakePHP命名约定更改模型文件名。

这可能是您的$ useTable变量无法按预期工作的原因。

+0

改名为Crew.php和行之有效的 – mitch 2014-10-10 10:40:41

+0

很高兴我能帮助你;)有乐趣的编码 – justrohu 2014-10-10 10:43:51

0

请更改型号名称Crew.php我想从CrewModel.php工作