我尝试返回单个对象而不是 Laravel 中的集合。实际上这段代码有效:
public function show($id)
{
$facture = Facture::where('id', '=', $id)->with('items')->with('client')->get();
return Response::json($facture[0]);
}
但我想知道它是否是正确的做法?
答案 0 :(得分:8)
虽然first()
适用于任何类型的查询,但当您通过标识find()
获取模型时,这是首选方法。您还可以合并两个with
来电:
$facture = Facture::with('items', 'client')->find($id);
答案 1 :(得分:1)
这是获取单个对象而不是集合的正确代码:
public function show($id)
{
$facture = Facture::where('id', '=', $id)->with('items')->with('client')->first();
return Response::json($facture);
}