Laravel控制器传递变量至.blade.php模板失败求助
解决Laravel控制器向Blade模板传参失败的问题
你的问题出在控制器中with方法的错误使用,compact()已经生成了包含变量名和对应值的关联数组,不需要再额外传递变量值作为with的第二个参数,错误的调用方式导致变量没有正确传递到视图。
正确的传参方式有以下几种:
方式1:直接将compact结果作为view的第二个参数(最简洁)
$contents = Storage::get($request->file('csv_file_1')->store('temporaryfiles')); $contents2 = Storage::get($request->file('csv_file_2')->store('temporaryfiles')); return view('comparison.comparison', compact('contents', 'contents2'));
方式2:使用with链式传递键值对
return view('comparison.comparison') ->with('contents', $contents) ->with('contents2', $contents2);
方式3:手动构建关联数组传递
return view('comparison.comparison', [ 'contents' => $contents, 'contents2' => $contents2 ]);
模板中的输出代码无需修改
你在Blade模板里的{{$contents}}写法是正确的,只要控制器传参正确,模板就能正常识别变量。
内容的提问来源于stack exchange,提问作者Raposa
相关产品推荐
相关产品推荐

