未定义变量:用户(查看:C:\xampp\mysql\CRUD\resources\views\Admin\Form User\index.blade.php)

Undefined variable: users (View: C:\xampp\mysql\CRUD\resources\views\Admin\Form User\index.blade.php)

请帮助我。我是 Laravel 的新手。 我正在尝试查看来自 table 的数据,但它显示此错误。我已经在控制器中定义了模型。我把我的 index.blade.php 放在文件里。 这些是我的代码。我用 Laravel 7

应用 -> User.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
class User extends Model
{
    protected $table = "users";
}

app -> Http -> 控制器 -> AdminController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;

class AdminController extends Controller
{

public function user(Request $request){

        return view('Admin/Form User/index');
}

public function show()
    {
        $users = User::all();
        return view('index', ['index' => $users]);
    }

}

路线 -> web.php

Route::get('/Admin/Form User/index', 'AdminController@user');
Route::get('/index', 'AdminController@show');

资源 -> 浏览量 -> main.blade.php

<a href="Admin/Form User/index" class="btn btn-primary" role="button">Form User</a>

资源 -> 视图 -> 管理 -> 表单用户 -> index.blade.php

<table class="table table-bordered table-hover table-striped">
                        <thead>
                            <tr>
                                <th>Id</th>
                                <th>Class</th>
                                <th>Name</th>
                                <th>Option</th>
                            </tr>
                        </thead>
                        <tbody>
                            @foreach($users as $u)
                            <tr>
                                <td>{{ $u->class }}</td>
                                <td>{{ $u->name }}</td>
                                
                                <td>
                                    <a>Edit</a>
                                    <a>Delete</a>
                                </td>
                            </tr>
                            @endforeach
                        </tbody>
                    </table>

谢谢

您应该尝试在您的用户模型文件中使用这种方式。我认为它会起作用

 <?php
    
    namespace App;
    
    use Illuminate\Database\Eloquent\Model;
    class User extends Model
    {
        protected $fillable = [
            'name', 'class',
        ];
    }

您应该尝试以这种方式在 AdminController 中传递您的对象,

 public function show()
        {
            $users = User::all();
            return view('index')->with('users', $users);
        }