我需要将示例中的数据(price
)发送到视图中,但要放在foreach
内部。
在我的项目中,我在数据库的一个表中拥有产品数据(title
,img
等)。
但是每种产品都有很多变体,我将这些变体放到另一个表中。
在view
中,我有foreach
,这使我12
个产品循环。
我需要将price
放在每个product
内。
问题是在我的控制器中定义每个产品的id
。
products.blade.php:
@foreach($products as $product)
<div> {{ here I need to put the price }} </div>
<div> {{ $product->slug }} </div>
@endforeach
ProductsController.php:
// all prices for my variants
$variants_prices = Variants
::where('product_slug', '=', $slug)
->get('attribute_price');
// minimum price
$min_price = $variants_prices
->where('attribute_price', $variants_prices->min('attribute_price'))
->first();
// take value of minimum price from all variants
$pdt_min_price = $min_price->attribute_price;
return view('products.index')
->with('pdt_min_price', $pdt_min_price);
我的blade
文件中需要包含以下内容:
如果有人能帮助我解决这个问题,我将感到非常高兴。
答案 0 :(得分:0)
您可以在模型中定义Product和Variant之间的关系
在您的Product
模型中:
function variant()
{
return $this->hasMany('App\Variant', 'foreign_key');
}
然后您可以使用:
$products = Product::with(['variant'])->get();
然后在循环中,您可以使用其键访问该变体:
{{ $product->variant[$key]['price'] }}