[英]CakePHP: Controller not finding Model function
因此,我遇到了致命的錯誤,因為當控制器調用方法時,該方法是未定義的。 雖然這不是真的,因為該方法在類模型中。
StudentsController.php
<?php
class StudentsController extends AppController{
public function index(){
$students = $this->Student->find('all');
$this->set('students', $students);
}
public function add(){
if($this->request->is('post')){
$this->formatData($this->request->data);
}
}
}
?>
然后我的模型:Student.php(模型)
<?php
class Student extends AppModel{
var $studentData;
public function formatData($studentData){
if(is_null($studentData)){
return false;
}else{
echo $studentData;
}
}
}
?>
您沒有在模型上調用該方法,而是在沒有此類方法的控制器上調用,因此出現錯誤。
雖然控制器可以自動加載模型,但它不公開其API,它只是通過魔術屬性訪問器使模型的實例可用。
而不是
$this->formatData($this->request->data);
你必須像這樣在模型上調用方法:
$this->Student->formatData($this->request->data);
也可以看看
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.