0

我试图在创建产品页面上获取所有类别,但它说:

语法错误,意外的 'compact' (T_STRING),需要 ',' 或 ')'

控制器:

  public function index(Request $request)
  {
      $categories = Category::distinct()->get();
      return view('admin.product.index' compact('categories'));
  }

刀:

  <div class="form-group">
       <select class="form-control" name="category_id">
          <option selected="">Under Category</option>
          @foreach(categories as category)
             <option value="{{ $category->id }}">{{ $category->name }}</option>
          @endforeach
       </select>
  </div>

错误: 在此处输入图像描述

4

3 回答 3

4

您之前忘记了逗号compact

return view('admin.product.index', compact('categories'));

在您看来,您已经忘记了$符号:

@foreach($categories as $category)
于 2019-08-01T06:15:25.233 回答
0

你也可以使用

$arr_view_data = []; $arr_view_data['categories'] = $categories; return view('admin.product.index',$arr_view_data);

于 2019-08-01T07:57:40.430 回答
0

我在您的代码中发现了两个错误,一个在控制器内部,另一个在视图中。也许你忘了在中间加上逗号,所以它应该像

 return view('admin.product.index', compact('categories'));

在视图中,您的循环不正确,也许您错过了 $ 符号。它应该是

@foreach($categories as $category)
于 2019-08-01T08:07:49.550 回答