Если оператор не работает с API в Laravel - PullRequest
1 голос
/ 31 мая 2019

Я изо всех сил пытаюсь вставить «разрешения» в диаграмму моего Ганта (он же DHTMLX Gantt ) Проблема в том, что я хочу, чтобы оператор if в моей функции был таким:

public function getOne($id){
      if(Auth::user()->hasRole('manufacturing')) {
        $tasks = Task::where('relation_id', $id)->where('parent', 0)->orwhere('permission', 2)->get();
        $links = Link::query();
      } else {
        $tasks = Task::get();
        $links = Link::query();
      }
      return response()->json([
          "data" => $tasks,
          "links" => $links->get()
      ]);

Здесь я использую Laratrust в качестве менеджера ролей. Теперь дело в том, что эта функция выдает мне консоль ошибка 500 , и я не могу отследить ее в API. Если я сделаю простой ЕСЛИ, как: if(1 === 1)

Работает нормально. Поэтому я думаю, что это проблема с API, не достигающим загруженного пакета. Мои маршруты Ганта находятся в api.php и записаны так:

use Illuminate\Http\Request;
Route::get('/data', 'GanttController@getAll');
Route::get('/data/{id}', 'GanttController@getOne');

Моя цель состоит в том, чтобы в зависимости от того, что говорит Laratrust (какую роль или разрешение имеет пользователь), я определяю оператор IF и изменяю запрос. Я знаю, что это не динамично, но это нужно сделать.

...