簡體   English   中英

動態laravel SQL查詢構建器

[英]Dynamic laravel SQL query builder

我正在嘗試使用laravel創建一個動態查詢,如果滿足某些條件,它將添加到我的查詢中。 到目前為止,這是我嘗試過的。 有什么指導嗎?

    $Tasks = Task::leftJoin('task_recipients', 'tasks.task_id', '=', 'task_recipients.recipient_task_id');

    if ($filterAssignedToMe !== NULL) {
        $Tasks->where('task_recipients.recipient_user_id', '=', $user_id);
    }

    if ($filterAssignedByMe !== NULL) {
        $Tasks->where('tasks.created_by', '=', $user_id);
    }

    $Tasks->groupBy('task_id');
    $Tasks->get();

干得好:

$Tasks = Task::leftJoin('task_recipients', 'tasks.task_id', '=', 'task_recipients.recipient_task_id');

if ($filterAssignedToMe !== NULL) {
    $Tasks = $Tasks->where('task_recipients.recipient_user_id', '=', $user_id);
}

if ($filterAssignedByMe !== NULL) {
    $Tasks = $Tasks->where('tasks.created_by', '=', $user_id);
}

$Tasks = $Tasks->groupBy('task_id');
$Tasks = $Tasks->get();

這樣行嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM