我正在学习 Laravel 4,到目前为止一切顺利。但由于某些奇怪的原因,blade 的 @foreach 似乎不适用于简单的查询。我的代码是:
Route:
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())}}
DB 数据以数组的形式原始显示。
我不太确定我在这里做错了什么,这几乎是初学者教程中的代码。
你应该使用template/layout
(但是你没有按照你的使用在Github上查看 https://github.com/OmarGRocha/laratest/blob/master/views/users/index.blade.php)和子视图应该扩展它,例如,你的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>
Also dd($users->toArray())
有效,因为它转储$user->toArray()
using var_dump
并使用退出脚本die
函数,则dd
means dump and die
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)