我有一个模型(CrewModel.php):
<?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)不尊重,Cake仍然使用tablename“crews”,当我var_dump($this->Crew);
时,我有以下响应:http://pastebin.com/2QsFeUQa
我的所有功能都没有执行(save()
,beforeSave()
...当然,当我执行$this->Crew->save()
等时
如何让它发挥作用?
答案 0 :(得分:0)
如果我们没有为Table定义Model并仍使用执行查询,那么在CakePHP中
$this->Model->query()
或与模型相关的内容。 CakePHP将为我们创建模型对象。
因此,您必须根据CakePHP命名约定更改模型文件名。
这可能是你的$ useTable变量无法正常工作的原因。
答案 1 :(得分:0)
请将模型名称更改为Crew.php我认为可以使用