我有一个数组这样的:发送阵列与紧凑到视图
$currentSelection = array('category' => $request->category, 'location' => $request->location);
当我发送此,以查看这样的:
return view('index', compact('currentSelection'));
我得到这样的信息:
未定义的可变电流选择
如何使用compact()正确发送数组?
我有一个数组这样的:发送阵列与紧凑到视图
$currentSelection = array('category' => $request->category, 'location' => $request->location);
当我发送此,以查看这样的:
return view('index', compact('currentSelection'));
我得到这样的信息:
未定义的可变电流选择
如何使用compact()正确发送数组?
试试这个:
return view('index')->with(compact('currentSelection'));
或
return view('index', array('currentSelection' => $currentSelection)); // the second param is an array, you can pass multiple elements in this array
,你可以查看刀片视图访问它的值,如:
{{ $currentSelection }}
注:在你的情况$currentSelection
是一个array
,所以你必须使用foreach()
得到它的所有元素
我还有其他几个对象,包含从Laravels雄辩模型返回的结果,为了简单起见,我在这里忽略了它们。 我想将它们与$ currentSelection一起发送,而不使用()方法,并仅使用compact(),这可能吗? – Eisenheim
尝试 返回视图('index',compact($ currentSelection));.
作为每Eisenheim评论:
编辑成返回视图( '索引',紧凑( 'VARNAME',$ currentSelection));
当我添加另一个变量时不起作用,如下所示: return view('index',compact('myNewVar',$ currentSelection)); – Eisenheim
请试试这个:
return view('index', compact(['currentSelection']));
你可以试试这个:
return view('index', [
'currentSelection' => $currentSelection,
]);
希望这对你的工作!
你确定'$ currentSelection'是在某个地方定义的吗? ['compact'不会发出警告,如果它不存在](http://php.net/manual/en/function.compact.php),那么你的底层'view'函数可能会窒息。 – Mark
@马克你是对的,这确实是一个范围问题。我如何关闭这个问题? – Eisenheim
我已经提前并将其标记。很高兴你解决了你的问题! – Mark