私はLaravel 5.2のコントローラに入っていて、注文アイテムのようなものに変換するinvoice_itemsの雄弁なコレクションを反復しようとしています。したがって、請求書は注文として機能し、注文アイテム(invoice_item)になり、請求書アイテムにはすべて注文された商品(商品)が表示されます。Laravel 5.2まあまあのforeachループ
は、ここで私が持っているものです。
$id = $value; //from param
$invoice = Invoice::where('id', $id)->get();
$invoice_items = Invoice_item::all()->where('invoice_id', $invoice[0]->id);
$contact = Contact::where('id', $invoice[0]->contact_id)->get();
foreach($invoice_items as $item) {
$products = Product::all()->where('id', $item->product_id);
}
は、私は、この特定の場合には2、異なる製品である必要があり、(請求書明細を経由して)その特定の請求書から製品のすべてを引くしようとしています。
何が起こっているのですか。ループを繰り返しながら同じ製品を2回追加するのですが、各製品を1回追加する必要があります。ここで私の論理は間違っていますか?それとも、私の関係をもう一度見なければならないのですか?
'where()'を使うときは、 'all()'の代わりに 'get()'を試してみてください。 – aynber
get()は残念なことに同じ出力を返します。しかし、迅速な対応をありがとう! –