Неизвестный метод отображается при вызове метода в контроллере, который присутствует в модели этого контроллера в cakephp 3.2.

Я новичок в cakephp 3.2. Я сохранил данные, вызвав модель в версии cakephp 2X таким образом.

 $this->Schools->add_school($schools);

Я использовал то же самое в 3x, но он не работает, показывая неизвестный метод "add_school"

Я также определил функцию в модели

ниже код модели School.php

Школа.php

<?php

namespace App\Model\Entity;
use Cake\Auth\DefaultPasswordHasher;
use Cake\ORM\Entity;



class School extends Entity
{

      public function add_school($schools) {
        echo "hii";exit;
    }
}

ошибка показывает Неизвестный метод "add_school" Пожалуйста, предложите мне. Заранее спасибо.


person sradha    schedule 09.03.2016    source источник
comment
Опечатка Ваша школа должна быть школой   -  person Ravi    schedule 09.03.2016


Ответы (2)


Вам нужно изучить документы немного более внимательно, вы смешиваете сущности и таблицы. Первые представляют данные, а вторые используются для взаимодействия с базой данных.

Ваш пользовательский метод должен войти в ваш класс SchoolsTablesrc/Model/Table), затем, учитывая, что $this->Schools существует (вам может понадобиться использовать $this->loadModel('Schools')), вы можете вызвать свой метод через эту ссылку.

Видеть

person ndm    schedule 09.03.2016

ваш код письма правильный, потому что в вашем коде есть мистек, который да, использовал только один мистек "s"

$this->School->add_school($schools);
person Tejas Girase    schedule 09.03.2016