未定义的变量: data , $data 未定义。拉拉维尔 8

Nar*_*aru 2 css php laravel laravel-blade laravel-8

我收到一条错误消息,指出未定义的变量数据引用了刀片中的 foreach

所以我的错误是:未定义的变量:数据(查看:C:\Users\adila\Desktop\onlineshop\onlineshop\resources\views\user\product.blade.php)

这是我的刀片文件:

<div class="latest-products">
      <div class="container">
        <div class="row">
          <div class="col-md-12">
            <div class="section-heading">
              <h2>Latest Products</h2>
              <a href="products.html">view all products <i class="fa fa-angle-right"></i></a>
            </div>
          </div>`enter code here`
         
          @foreach($data as $product)


          <div class="col-md-4">
            <div class="product-item">
              <a href="#"><img src="assets/images/product_06.jpg" alt=""></a>
              <div class="down-content">
                <a href="#"><h4>{{$product->title}}</h4></a>
                <h6>$ {{$product->harga}}</h6>
                <p>{{$product->deskripsi}}</p>
                
              </div>
            </div>
          </div>

        @endforeach

        </div>
      </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

这是我的控制器:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Models\User;
use App\Models\Product;

class HomeController extends Controller
{
    public function redirect(){
        $usertype = Auth::user()->usertype;

        if($usertype=='1'){
            return view('admin.home');
        }

        else{
            return view('user.home');
        }
    }

    public function index(){


        if(Auth::id()){
            return redirect('redirect');
        }
        else{

            $data = Product::all();

            return view('user.home',compact('data', $data));
        }
        
    }
}
Run Code Online (Sandbox Code Playgroud)

和我的路线:

Route::get('/', [HomeController::class, 'index']);
Run Code Online (Sandbox Code Playgroud)

请帮我

Tir*_*asi 7

请从compact()函数中删除$data

\n
 return view('user.home',compact('data'));\n
Run Code Online (Sandbox Code Playgroud)\n

您将变量 \xe2\x80\x8d 传递$data\xe2\x80\x8d给 \xe2\x80\x8d\xe2\x80\x8d\xe2\x80\x8d\xe2\x80\x8dview('user.home', compact('data'))但出现错误,product.blade我认为问题出在product. blade文件。检查该文件

\n