加载页面时出现以下错误:Undefined variable: userIds
但是,当我尝试{{ isset($userIds) ? 'Yes' : 'No' }}
时,变量达到了给定的部分。到达代码块时,它返回'是'。
在以下输入类型中,变量$ userIds发生错误:
</li>
@foreach ($users as $index => $user)
<li class="list-group-item"
style="{{ (isset($usersFiltered) && is_array($usersFiltered) && !in_array($user->id, $usersFiltered) ) ?
'display: none;' : ''}}">
<div class="checkbox">
<label>
<input type="checkbox" class="awe-selectable" id="users[{{ $index }}]" name="users[{{ $index }}]"
value="{{ $user->id }}" {{ in_array($user->id,$userIds) ? 'checked' : '' }}>
<label for="users[{{ $index }}]">{{ $user->name }}</label>
</label>
</div>
</li>
@endforeach
我的控制器代码将变量发送到局部变量:
return view('core::admin.groups.partials._users_form', [
'group' => $group,
'users' => $users,
'usersFiltered' => $usersFiltered,
'userIds' => $userIds,
]);
这是语法错误吗?如果我将$ userIds替换为其他任何变量,这些变量也将返回相同的“未定义”错误(例如,使用$ usersFiltered)
谢谢,将根据需要编辑带有更多信息的帖子。
语法对我来说不错,但我建议您这样做:
// in your controller
foreach ($users as $user) {
$user->checked = false;
if ((is_array($userIds) and !empty($userIds)) and in_array($user->id, $userIds) {
$user->checked = true;
}
}
由于您已将$userIds
固定在控制器中,所以现在无需将其发送到视图。
// in your view
<input type="checkbox" class="awe-selectable" id="users[{{ $index }}]" name="users[{{ $index }}]" value="{{ $user->id }}" {{ ($user->checked) ? 'checked' : '' }}>
快乐编码!