簡體   English   中英

CakePHP:控制器找不到模型功能

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM