Вызов функции get all для моего контроллера из модели возвращает пустое значение. Laravel 5.8

#php #json #laravel #model #controller

Вопрос:

Я пытаюсь извлечь все строки таблицы из своей базы данных в функции модели. Затем я пытаюсь вызвать эту функцию из своего контроллера.

Он возвращает пустой массив. Если я помещу код модели непосредственно в свой контроллер, он будет работать, я получу все строки и данные в формате json.

Почему, когда я вызываю функцию из своего контроллера, она возвращается пустой?

Модель

 lt;?php  namespace App;  use IlluminateDatabaseEloquentModel;   class circuits extends Model {  protected $fillable = [  'circuitId', 'circuitRef', 'name',  'location', 'country', 'lat',  'lng', 'alt', 'url',  ];   public function races()  {  return $this-gt;hasMany('Appraces', 'circuitId');  }   public function allCircuits(){  $data = Circuits::all();  return response()-gt;json($data);  } }  

Контроллер

 public function index()  {  $data = new circuits;  $data-gt;allCircuits();  echo ($data);  }  

Ответ №1:

вы должны сохранить возвращаемое значение в какой-либо переменной и повторить эту попытку:

 public function index() {  $data = new circuits;  $allCircuits = $data-gt;allCircuits();  echo ($allCircuits); }