将变量从控制器传递到视图Laravel 5.8时出错
我试图用一个简单的变量将一个变量从控制器传递到Laravel中的视图,但它导致了一个错误:欠定义变量 我试图改变:将变量从控制器传递到视图Laravel 5.8时出错,laravel,Laravel,我试图用一个简单的变量将一个变量从控制器传递到Laravel中的视图,但它导致了一个错误:欠定义变量 我试图改变: return view('home', $Test); 或 或 我的控制器: public function index(){ $Test = 55; return view('home',compact('Test')); } 我的看法 <html>
return view('home', $Test);
或
或
我的控制器:
public function index(){
$Test = 55;
return view('home',compact('Test'));
}
我的看法
<html>
<body>
<h1> {{$Test}} </h1>
</body>
</html>
像下面这样传过去
return view('home', ['Test' => $Test]);
参考检查仅使用compact('Test')
将把变量传递给视图
所以,如果您离开您的控制器和视图,如您的问题所示,它将工作 我最初在Laravel 5.7中遇到了相同的问题,其中必须使用
with()
方法将变量传递给blade模板。但我已经在我自己的Laravel 5.8安装程序上测试了您的原始代码,它工作得非常完美:
return view('home')->with('Test', $test);
public function index()
{
$Test = 55;
return view('home', compact('Test'));
}
这里可能已经有了一个答案:谢谢,伙计,我不知道为什么,但我安装特定5.7版本的laravel项目的唯一解决方案是最好的解决方案,我认为5.8版本已经改变了一些东西,它仍然有这样一个错误:ErrorException{227▼ #消息:“未定义变量:Test”#代码:0#文件:“E:\Desktop\aroundtrips\storage\framework\views\245291ca31ad79effeff6d548bc38081345e95242.php”#行:78#严重性:E#注意#1如果您从以前的版本升级到Laravel 5.8,请确保在homestead目录中运行
vagrant provision
,并重新测试您的站点。另外,确保composer.json
是最新版本。
return view('home', ['Test' => $Test]);
return view('home')->with('Test', $test);
public function index()
{
$Test = 55;
return view('home', compact('Test'));
}