Laravel Blade @foreach не работает

Я изучаю Laravel 4, пока все хорошо. Но для какой-то странной причины @foreach клика, похоже, не работает для простого запроса. Мой код:

Маршрут:

Route::get('/users', function(){ $users = User::all(); return View::make('users/index')->with('users',$users); }); 

Теперь в index.blade.php мой код:

  @foreach ($users as $user) <p>User: {{ $user->username }}</p> @endforeach 

Странно то, что когда я сбрасываю объект в представлении, он работает:

 {{ dd($users->toArray())}} 

Данные БД отображаются как массив.

Я не совсем уверен, что я делаю неправильно здесь, это довольно много кода из учебника для начинающих.

Вы должны использовать template/layout (но вы не использовали его в соответствии с вашим представлением в Github ), а дочерние представления должны его расширять, например, ваше представление index.blade.php должно выглядеть примерно так:

 // index.blade.php @extends('layouts.master') @section('content') @foreach ($users as $user) <p>User: {{ $user->username }}</p> @endforeach @stop 

Теперь убедитесь, что в папке app/views/layouts есть макет master.blade.php и он содержит что-то вроде этого:

 // master.blade.php <!doctype html> <html class="no-js" lang=""> <head> <style></style> </head> <body> <div class='content'> @yield('content') {{-- This will show the rendered view data --}} </div> </body> </html> 

Также dd($users->toArray()) работает, потому что он выгружает $user->toArray() с помощью var_dump и выходит из скрипта с использованием функции die , dd означает « dump and die .