Я получаю следующую ошибку при загрузке страницы: {{Х0}}
Тем не менее, переменная достигает заданного значения, когда я пытаюсь {{ 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)
Заранее спасибо, отредактирую пост с дополнительной информацией по мере необходимости.
2 ответа
Синтаксис выглядит хорошо для меня, но я бы посоветовал вам сделать это:
// 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' : '' }}>
Удачного кодирования!
Решено!
Проблема заключалась в том, что при визуализации страницы переменная не была определена в рендере главной страницы (/ create), а только в методе, который рендерил частичное, поэтому, когда я открывал главное окно, переменная еще не была определена, поскольку он был получен от контроллера только после применения фильтра.
Гуманный :
/**
* GET: /admin/security/groups/create
*/
public function create()
{
**$userIds = !empty($request['userIds']) ? $request['userIds'] : [];**
(...)
return view('core::admin.groups.create', [
'group' => new Group,
**'userIds' => $userIds,**
'users' => $users,
'isCreating' => true,
]);
Похожие вопросы
Новые вопросы
php
PHP - это широко используемый высокоуровневый, динамический, объектно-ориентированный и интерпретируемый язык сценариев, в первую очередь предназначенный для серверной веб-разработки. Используется для вопросов о языке PHP.