我有兩個表,產品和子產品。 我也有一個視圖,顯示有關產品的信息(查看從數據庫動態生成的數據)。在這個觀點上,應該顯示所有的副產品。我怎樣才能做到這一點?因爲我循環查看視圖中的第一個查詢,而不是在控制器中。Laravel:控制器中的2個DB查詢,而1個值取決於第一個查詢
控制器:
public function showSpecificProduct($name)
{
$name = strtolower($name);
$product = \DB::select('select * from products where name = ? LIMIT 1', [$name]);
$subProducts = \DB::select('select * from subproducts where mainproduct = ?', [/* id from $product belongs here */]);
return view('products.single', ['products' => $product, 'subproducts' => $subProducts]);
}
查看:
@foreach ($products as $product)
<div class="col-md-4">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ $product->name }}</h3>
</div>
<!-- /.box-header -->
<div class="box-body">
<img src="{{ $product->img }}" alt="{{ $product->name }}" class="img-responsive">
</div>
</div>
<!-- /.box -->
</div>
@endforeach
此外,有沒有在laravel做第一個查詢更好的方法?因爲我使用的是foreach循環,而只有1行。
預先感謝您
謝謝。但是,在第一個隊列中總是隻有一行返回。沒有更好的方法嗎?通過在示例中使用$ product [0]作爲第二行,它不起作用。 – PoTTii
爲什麼不使用連接操作來獲得答案? – Sachith