Php 如何在Laravel中使用或在何处组合结果?

Php 如何在Laravel中使用或在何处组合结果?,php,laravel,Php,Laravel,我试图找到slugs complete和complete model TaskboardColumn,然后我只想要用户和项目的值 以下是我尝试过的: 模型 public static function projectOpenTasks($projectId, $userID=null) { $taskBoardColumn = \App\TaskboardColumn::where('slug', 'incomplete')->first(); $taskBoardColu

我试图找到slugs complete和complete model TaskboardColumn,然后我只想要用户和项目的值

以下是我尝试过的:

模型

public static function projectOpenTasks($projectId, $userID=null)
{
    $taskBoardColumn = \App\TaskboardColumn::where('slug', 'incomplete')->first();
    $taskBoardColumn2 = \App\TaskboardColumn::where('slug', 'inprogress')->first();
    $projectTask = \App\Task::where('tasks.board_column_id', $taskBoardColumn->id)->orWhere('tasks.board_column_id', $taskBoardColumn2->id);

    if($userID)
    {
        $projectIssue = $projectTask->where('user_id', '=', $userID);
    }

    $projectIssue = $projectTask->where('project_id', $projectId)
        ->get();

    return $projectIssue;
}
控制器

$this->openTasks = Task::projectOpenTasks($this->project->id);
看法

  • @lang('app.title') @lang('app.dueDate')
  • @forelse($key=>$task的openTasks)
  • {($key+1)。'..ucfirst($task->heading)} {{$task->due\u date->format($global->date\u format)}
  • @空的
  • @lang('messages.noOpenTasks')
  • @endforelse

有了这段代码,我将获得所有的任务,我只需要这个项目的任务。

您可以使用分组来实现这一点

$projectTask = \App\Task::where(function($q) {
      $q->where('tasks.board_column_id', $taskBoardColumn->id);
      $q->orWhere('tasks.board_column_id', $taskBoardColumn2->id)
})->get();

谢谢

您可以使用分组来实现这一点

$projectTask = \App\Task::where(function($q) {
      $q->where('tasks.board_column_id', $taskBoardColumn->id);
      $q->orWhere('tasks.board_column_id', $taskBoardColumn2->id)
})->get();

谢谢

或者在只需运行一个查询的地方使用where。就像编程中的
关键字一样,在查询的意义上使用where

以下是代码片段-

$projectTask = $query->where('tasks.board_column_id', $taskBoardColumn->id)
      ->orWhere('tasks.board_column_id', $taskBoardColumn2->id)
      ->get();


orwhere用于只需运行一个查询的位置。就像编程中的
关键字一样,在查询的意义上使用where

以下是代码片段-

$projectTask = $query->where('tasks.board_column_id', $taskBoardColumn->id)
      ->orWhere('tasks.board_column_id', $taskBoardColumn2->id)
      ->get();