Я пробовал код ниже, но он не работает.
В этом коде, когда я ввел номер «УДАЛЕН», «id» в браузере «URL», он также показывает сведения о пользователях статуса «УДАЛЕН», я хочу показать и получить доступ только к пользователям «АКТИВИРОВАТЬ» И «ДЕАКТИВИРОВАТЬ», только если я ввел « DELETED» Пользователи «id» в «URL» должны показать ошибку:
public function staff_status($id)
{
$user = User::where('status', '=', 'ACTIVATE')->orWhere('status', '=', 'DEACTIVATE')->find($id);
return view('home', compact('user'));
}
public function status_update(Request $request, $id)
{
$user = User::where('status', '=', 'ACTIVATE') > orWhere('status', '=', 'DEACTIVATE')->find($id);
$user['status'] = $request->status;
$user->save();
return back()->with('success', 'SUBMITED SUCCESSFULLY .');
}
@ Chay22 для этого кода? $user=User::where('status','=','ACTIVATE')->orWhere('status','=','DEACTIVATE')->find($id);
Вместо orWhere
используйте другой where
. User::where('status', 'ACTIVATE')->where('status', 'DEACTIVATE')->find($id);
если вы хотите вернуть как активных, так и удаленных пользователей
Ошибка @ Chay22 «Попытка получить идентификатор свойства не-объекта»
Как упомянул @ Chay22, вы должны добавить еще одно условие where
просто замените свой код на этот
public function staff_status($id)
{
$user = User::where('status', '!=', 'DELETED')
->where(function($query){
$query->where('status','=','ACTIVATE');
$query->orWhere('status','=','DEACTIVATE');
})->find($id);
if (! $user) {
return // return your error here
}
return view('home',compact('user'));
}
public function status_update(Request $request, $id)
{
$user = User::where('status', '!=', 'DELETED')
->where(function($query){
$query->where('status','=','ACTIVATE');
$query->orWhere('status','=','DEACTIVATE');
})->find($id);
if ($user) {
$user->status = $request->status;
$user->save();
return back()->with('success','SUBMITED SUCCESSFULLY .');
} else {
return // return your error here
}
}
показывает ошибку «синтаксическая ошибка, неожиданный запрос $ (T_VARIABLE)»
@RamuRamu ;
отсутствует во вложенных местах, я обновил ответ
Добавьте еще одно условие
->where('status', '!=', 'DELETED')->findOrFail($id)