这是来自CategoriesController的代码:
public function index()
{
$categories = Category::all();
return view('/home', compact('categories'));
}这是我给home.blade.php写的代码
@foreach($categories as $cat)
@endforeach然后在home.blade.php
我得到了一个错误:Undefined variable: categories
为什么会这样?所有的东西都能很好地处理文章,而不是类别,代码也是一样的。
Home.blade.php
@extends('app')
@section('content')
<div class="col-md-4 pull-right">
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">Categories</h3>
</div>
<div class="panel-body">
@foreach($categories as $cat)
<div class="col-lg-6">
<ul class="list-unstyled">
<li><a href="articles/category/{{ }}">News</a>
</li>
</ul>
</div>
@endforeach
</div>
</div>
</div>
@if(count($articles))
@foreach($articles as $article)
<div class="panel panel-default col-md-8">
<div class="panel-heading">
<h3>{{ $article->title }}</h3>
<small>posted by <a href="users/{{ $article->author->name }}">{{ $article->author->name }}</a> {{ $article->created_at }}</small>
</div>
<div class="panel-body">
{!! str_limit($article->body, 1000) !!}
<hr>
<a href="{{ url('/articles/'.$article->slug) }}">Read More</a>
</div>
</div>
@endforeach
@else
<h1>No articles at the moment.</h1>
@endif
<br>
{!! $articles->render() !!}
@stop发布于 2015-07-07 10:11:35
你有两条路
Route::get('/home', 'ArticlesController@index');
Route::get('/home', 'CategoriesController@index');这意味着当您访问/home时,只触发ArticlesController@index,而不是两者都触发。
这意味着没有填充视图中使用的$categories变量,因为CategoriesController中的index()方法就是要这样做的,但是从来没有调用过。
因此,你需要这样做
Route::get('/home', 'HomeController@index');
public function index()
{
$categories = Category::all();
$articles = Article::all();
return view('/home', compact('articles', 'categories'));
}发布于 2015-07-07 09:16:52
试着使用
return View::make('/home')->with(compact('categories'));而不是
return view('/home', compact('categories'));发布于 2020-04-07 03:21:04
我把这个插入到我的@foreach顶部
<?php
use App\models\PersonalContact;
$data = PersonalContact::all();
?>或在“foreach”之前添加“if”语句,如下所示
@if (count($data) > 0)
@foreach ($data as $bloginfo)
<tr role="row" class="odd">
<td class="sorting_1">{{$bloginfo->name}}</td>
<td>{{$bloginfo->description}}</td>
<td>{{$bloginfo->email}}</td>
<td>{{$bloginfo->phone}}</td>
<td><img src="{{url('images/'.$bloginfo->image)}}" alt="" width="100px" height="100px"></td>
<td><a href="{{url('admin/{admin}/personalcontact/create')}}" class="btn btn-app"><i class="fas fa-edit"></i>Add</a> | <a href="{{url('admin/{admin}/personalcontact/{personalcontact}/edit')}}" class="btn btn-app"><i class="fas fa-edit"></i>Edit</a> | <a class="btn btn-app"><i class="fas fa-edit"></i>Delete</a></td>
</tr>
@endforeach
@endif https://stackoverflow.com/questions/31264242
复制相似问题