If语句不适用于Laravel中的API

时间:2019-05-31 06:15:19

标签: php json laravel dhtmlx gantt-chart

我正在努力在甘特图中插入“权限” (又名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,例如:if(1 === 1)

工作正常。因此,我认为这是API无法到达下载包的问题。我的 Gantt的路线位于 api.php 中,其编写方式如下:

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

我的目标是根据Laratrust所说的内容(用户具有哪个角色或权限)来定义IF语句并更改查询。我知道它不是动态的,但必须这样做。

0 个答案:

没有答案