未定义的变量laravel控制器/路由

时间:2018-10-11 10:29:04

标签: laravel variables controller routes undefined

我正在尝试从数据库中获取数据并将其显示在索引页面上。

const withImages = require('next-images')
module.exports = withImages({
  webpack(config, options) {
    return config
  }
})

函数索引必须收集所有数据。

路线:import Img from "./image.jpg"

索引:

namespace Svcrs\Http\Controllers;

use Illuminate\Http\Request;
use Svcrs\Models\Reservation;

class dashboardTest extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $reservations = Reservation::all();

        return view('dashboard\index', compact('reservation'));
    }

    ........

但这似乎是一个未定义的变量,这意味着它们不能很好地链接在一起。找不到正确的路径。

预先感谢

4 个答案:

答案 0 :(得分:1)

紧凑函数需要获取您在控制器中使用的变量的名称。

因此,您使用reservation时,变量名为reservations

在dashboardTest中将代码更改为

 public function index()
 {
        $reservations = Reservation::all();
        return view('dashboard\index', compact('reservations')); // Change over here
 }

您可以在此处了解有关compact()函数的信息:PHP compact()

希望这对您有所帮助!

,您应该可以访问视图中的变量。

答案 1 :(得分:0)

代码有几个问题,第一个问题是您为视图路线使用了错误的/表示法,并且还发送了一个名为$reservation的未定义变量,我想您拼写错误,实际上想发送$reservations,应该是:

view('dashboard.index', compact('reservations'))

下一个问题是您使用的是undefined variable name: $dasboardStats,而不是通过控制器发送到视图中的。

您还将$reservations内的view视为单个深度数组,这是不正确的,$reservations是一个Collection对象,需要在以便检索您要查找的值。

routes内的控制器名称也错误

答案 2 :(得分:0)

您已分配 $reservations = Reservation::all(); <=这里是“预订”

您返回 1)return view('dashboard\index', compact('reservation')); <=这里是“保留”,应该是“保留”

和刀片模板中 2){{ $reservations ['departure_id']}}

3),是的,->all()也将为您提供多条记录,因此您不能像$reservations ['departure_id']

那样直接使用

4)另一个不是从控制器发送的$ dasboardStats

答案 3 :(得分:0)

您的班级名称不正确dashboardTestController是您正在调用并定义的名称dashboardTest,这

namespace Svcrs\Http\Controllers;

use Illuminate\Http\Request;
use Svcrs\Models\Reservation;

class dashboardTestController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $reservations = Reservation::all();

        return view('dashboard\index', compact('reservation'));
    }