У меня есть этот метод в моем DocumentsController
, и я пытаюсь реализовать некоторую простую систему разрешений, в которой пользователю, который не является администратором, должен быть назначен филиал и отдел перед добавлением, редактированием или удалением Document
,Вот код для метода
/**
* Check the credentials of the user that is not an admin
* to add, modify a document
*/
private function checkCredentials() {
$user = auth()->user();
// dd((!is_admin() && !$user->branch_id && !$user->department_id));
if (!is_admin() && !$user->branch_id && !$user->department_id) {
// dd(redirect()->route('documents'));
return redirect()->route('documents')->with([
'class' => 'alert-danger',
'message' => 'Ask your administrator to assign you a branch and department first',
]);
}
}
А вот как я вызываю его в одном из моих методов контроллера, которые сопоставлены с маршрутом Route::get('/documents/add', ['as' => 'documents.add', 'uses' => 'DocumentsController@create',]);
public function create()
{
$this->checkCredentials();
...
return view('main/documents/create', $data);
}
Проблема заключается в перенаправлениине работает, так как продолжает отображать форму, даже если пользователю еще не присвоен филиал или отдел, то есть когда оба значения branch_id
и department_id
равны null
.
В чем может быть причина этого?Спасибо.