0

几个小时以来我一直有这个问题,我不知道出了什么问题。我正在尝试在 Laravel 中列出注册用户,但它一直给我错误:

“未定义变量:用户(查看:C:\xampp\htdocs\laraveltest1\links\resources\views\home.blade.php)”

我在 Laravel Discord 服务器上询问过。我们已经尝试了几件没有运气的事情,例如更改名称和更改代码。

主页.blade.php

@foreach ($users as $user) {
<tbody>
<tr>
    <td>{{ $user->name }}</td>
</tr>
</tbody>
@endforeach

控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;

}

class UserController extends Controller
{
    public function index()
    {
        $users = DB::table('users')->get();

        return view()-> with ('home', ['users' => $users]);
    }
}

我想要一个列表,但它给了我上面提到的错误代码。

4

2 回答 2

2

尝试这个:

use App\User;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();

        return view('home', compact('users'));
    }

} 

在你看来

@foreach($users as $user)
{{$user->name}}
@endforeach
于 2019-01-28T21:58:23.033 回答
0

添加到@LucasPiazzi 的答案。

class UserController extends Controller
{
    public function index()
    {
        $users = DB::table('users')->get();

        return view('home')->with(['users' => $users]); //take a closer look here
    }
}

这就是您将变量从控制器传递到视图的方式。现在,如果您将 a 添加{{ dd($users) }}home.blade.php您应该能够看到$users变量的转储

于 2019-01-29T06:14:23.417 回答