我试图通过一个简单的变量将一个变量从Controller传递到Laravel中的View,但这会导致一个错误:未定义的变量。
我尝试更改:
return view('home', $Test);
或
return view('home', 'Test' => $Test);
或
return view('home')->with('Test');
我的控制器:
public function index(){
$Test = 55;
return view('home',compact('Test'));
}
我的观点
<html>
<body>
<h1> {{$Test}} </h1>
</body>
</html>
这是错误:
ErrorException {#229 ▼
#message: "Undefined variable: Test"
#code: 0
#file: "E:\Desktop\aroundtrips\storage\framework\views\245291ca31ad79efeff6d548bc38081345e95242.php"
#line: 78
#severity: E_NOTICE
}
答案 0 :(得分:1)
答案 1 :(得分:0)
只需使用compact('Test')
即可将变量传递给视图。
因此,如果您离开控制器并按问题所示进行查看,它将可以正常工作。
答案 2 :(得分:0)
return view('home')->with('Test', $test);
答案 3 :(得分:0)
最初,我在Laravel 5.7中遇到相同的问题,其中必须使用with()
方法将变量传递到刀片模板。但是我已经在自己的Laravel 5.8设置上测试了您的原始代码,并且可以完美运行:
public function index()
{
$Test = 55;
return view('home', compact('Test'));
}