嗨,我想显示与之相关的产品类别,但它说:
未定义变量:行 (查看:\ resources \ views \ admin \ category \ show.blade.php)
blade
文件:
@foreach($row->products as $pro_data)
{{ $pro_data->product_name }}
@endforeach
我将上面的代码写入show.blade.php
类别模型:
protected $fillable = [
'category_name', 'category_description', 'category_slug', 'category_image'
];
public function product()
{
return $this->hasMany('App\Product');
}
产品型号:
protected $fillable = [
'product_name', 'product_description', 'product_image', 'category_id', 'product_code', 'product_price', 'product_status', 'product_slug'
];
public function category()
{
return $this->belongsTo('App\Category');
}
类别控制器:
public function show(Category $category)
{
return view('admin.category.show', compact('category'));
}
答案 0 :(得分:0)
如您所见,您已经在Controller中压缩了变量名类别。
您在刀片文件中使用$ row
在.blade.php文件中将$ row替换为$ category
@foreach($category->products as $pro_data)
{{ $pro_data->product_name }}
@endforeach
将$ row更改为$ category之后,将您的关系名称从product更改为Product模型中的product。
类别模型:
...
public function products()
{
return $this->hasMany('App\Product');
}
...
答案 1 :(得分:0)
//Category controller
public function show(Category $category){
$category = $category->with('product')->get();
return view('admin.category.show', compact('category'));
}
// blade
@foreach($category->product as $pro_data)
{{ $pro_data->product_name }}
@endforeach