2017-05-02 22 views
-1

クエリの結果を取得するのに問題があります。それは次のとおりです。私は2つのテーブル、taskstask_interactionsを持っています。テーブルタスクはタスクを保存し、テーブルtask_interactionsはステータスの変更、コメントのようなタスクの履歴を保存します。task_interactionsテーブルのカラムtask_idはテーブルタスクのidです。 テーブルタスクには次の列があります。id | project_id | task_type_id | related_block | created_by | assigned_to | start_date | due_date | task_priority | comments | status | created_at |updated_atこのテーブルのステータスは削除されます。Laravel別のテーブルのIDを持つテーブルから値を取得する方法

テーブルtaskinteractionsは次の列があります。

タスクモデル::

public function taskinteractions() 
{ 
    return $this->hasMany('App\Taskinteraction'); 
} 

私は次のような関係を作成したモデルで idtask_idstatuscommentscreated_at

タスクの操作モデル:

public function tasks() 
{ 
    return $this->belongsTo('App\Task'); 
} 

質問: ステータス(テーブルのタスクインタラクション)のステータスが「進行中」の認証済みユーザに割り当てられているすべてのタスクを取得したいと考えています。 私は良い結果が得られず、さまざまなアプローチを試みました。 私は初心者ですので、解決策は簡単かもしれないと思っていますが、どうすればいいのかわかりません。

答えて

0

$tasksはあなたが

$interactions = TaskInteractions::where('status','In Progress')->get(); 
$tasks = array(); 
foreach($interactions as $interaction){ 
    $task = $interaction->task; 
    if((!(in_array($task, $tasks))) && (Auth::user()->id == $task->assigned_to)){ 
     array_push($tasks,$task); 
    } 
を取得したいタスクの配列である、以下を試してみてください、 assigned_toは、ユーザーのIDと一般的なユーザーテーブルを持っていると仮定すると、
関連する問題