Laravel打破并结合口才查询

时间:2018-08-06 14:08:21

标签: php laravel eloquent

在控制器中我的一项操作中,我有一个可选参数id,当在雄辩的查询链中该参数不为NULL时,我想使用该参数:

public function myInvoices($id = null)
{
    $invoices = PaymentPackages::whereUserId(auth()->user()->id)
        ->with(
            ['package' => function ($query) {
                $query->with(['features', 'panel']);
            }
            ]
        )->latest('id');

    if ($id != null) {
        $invoices->whereId($id);
    }

    $invoices->get();

    dd($invoices);
}

当我尝试在dd上获得此查询的结果时,我得到了Builder结果

Builder {#1355 ▼
  #query: Builder {#1354 ▶}
  #model: PaymentPackages {#1353 ▶}
  #eagerLoad: array:1 [▶]
  #localMacros: []
  #onDelete: null
  #passthru: array:12 [▶]
  #scopes: []
  #removedScopes: []
}

在不为NULL的情况下,如何在不编写带有id参数的其他查询的情况下解决使用id的问题?

1 个答案:

答案 0 :(得分:0)

您没有保存查询结果:

$result = $invoices->get();
dd($result);