Передать экземпляр модели в параметре метода - PullRequest
0 голосов
/ 21 сентября 2018

Я пытаюсь создать общий класс для моделей, где я передаю экземпляр модели моему отдельному параметру

class Custom
{

    private $model;

    public function getAll()
    {

        return $this->model->get();
    }

    public function  setModel(Model $model)
    {

        $this->model=$model;

    }
}

и моему контроллеру у меня есть

$customModel=new Custom();
$customModel->setModel(Branch::class);
echo "<pre>";
print_r($customModel->getAll());

, а такжеЯ пытался

$response=$this->customDatatable->setModel(Branch::class)->getAll();
echo "<pre>";
print_r($response->toArray());

, но я получил следующую ошибку

Аргумент 1, передаваемый в App \ Helpers \ Custom :: setModel (), должен быть экземпляром Illuminate \ Database \ Eloquent\ Модель, заданная строка, называется

1 Ответ

0 голосов
/ 21 сентября 2018

Branch::class - это константа класса , которая возвращает имя класса в виде строки, как предполагает сообщение об ошибке.Возможно, вы хотите передать new Branch вместо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...