【问题标题】:Why do I keep getting 'Undefined variable: charities' in Laravel 5.4?为什么我在 Laravel 5.4 中不断收到“未定义的变量:慈善机构”?
【发布时间】:2017-09-20 08:49:57
【问题描述】:

我不断收到这个未定义的变量错误。我正在尝试向用户展示所有慈善机构,我正在为“charityowners”类型的用户执行完全相同的功能,并且它正在为他们工作。

路线:

Route::get('charities', 'HomeController@displayCharities');

家庭控制器:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use Auth;
use Image;
use App\Charities;

class HomeController extends Controller
{
    public function displayCharities()
    {
    $charities = Charities::all();

    return view('charities', ['charities' => $charities]);
    }

}

查看:

<table class="table">

<tr>

    <td> <strong> Name </strong> </td>
    <td> <strong> Image </strong> </td>
    <td> <strong> Description </strong> </td>
    <td> <strong> Action </strong> </td>

</tr>

@foreach($charities as $charity)

<tr>

    <td> {{ $charity->name }} </td>
    <td> Not Available </td>
    <td> {{ $charity->description }} </td>

</tr>

@endforeach

</table>

我不断收到的错误是:

d9249250b321fd33ae875d6ca2417a0420928492.php 第 39 行中的 ErrorException: 未定义变量:charities(查看:C:\wamp64\www\EasyDonationNew\laravel\resources\views\charities.blade.php)

我错过了什么??

【问题讨论】:

  • 当您在 HomeController 中 dd($charities) 时会得到什么?
  • 如果您在控制器中dd($charities),它是否包含任何内容?
  • @linktoahref 哈哈,好主意。
  • @linktoahref 它返回集合,一个包含 4 个项目的数组,对应于我数据库中的 4 个慈善机构。
  • 你试过return view('charities', compact('charities'));吗?

标签: php laravel laravel-5.4


【解决方案1】:

尝试将变量 $charities 全局初始化为空字符串或 null。

在全局范围内,只有定义了 var 才能看到它。

【讨论】:

    【解决方案2】:

    你可以试试这个

    return view('charities')->with('charities', $charities);
    

    【讨论】:

      【解决方案3】:

      现在可以通过添加:

      @if(isset($ownedCharities))
      

      在 foreach 循环之前。

      【讨论】:

        猜你喜欢
        • 2016-11-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-20
        • 1970-01-01
        • 1970-01-01
        • 2016-12-18
        • 1970-01-01
        相关资源
        最近更新 更多