У меня есть контроллер, в котором в своей функции он проверяет политику, назначенную модели Post:
Приложение\Http\Controllers\PostController
class PostController extends Controller
{
public function index(Request $request, Post $post) {
$response = Gate::inspect('viewAny', $post);
if ($response->allowed()) {
echo 'valid';
} else {
echo 'invalid';
}
}
}
Файл: PostPolicy
public function viewAny(User $user)
{
return $user->role === 'admin' ? Response::allow() : Response::deny();
}
когда пользователь вошел в систему как администратор, он возвращает сообщение о входе в систему с правами администратора, когда он не является администратором, он возвращает ответ 403, я хотел бы заменить этот ответ 403 сообщением типа «Пользователь не является администратором».
return $user->role === 'admins' ? Response::allow() : Response::deny('User is not administrator');
, возвращаю страницу 403 с сообщением, что пользователь не является администратором, но я хочу вернуть, например, false, и на контроллере, если ответ будет false, поэтому я что-нибудь сделаю. - person SaroBeatbox   schedule 01.09.2020