J'écris une solution basée sur le serveur. Dans la base de données, il y a beaucoup d'utilisateurs avec des permissions différentes et je dois vérifier s'ils ont la permission d'accéder au module qu'ils essayent de faire.Laravel: Vérification si l'utilisateur a l'autorisation
Dans chaque contrôleur j'ai inclus quelque chose comme:
protected $module = "moduleName";
J'ai essayé de le résoudre aime:
function __construct()
{
$perm = session()->get('perm');
if (!isset($perm[$this->module]) || !$perm[$this->module]) {
Session::flash('message_error', "<span class='glyphicon glyphicon-warning-sign'></span> Access denined!");
return back();
}
}
Il affiche le message mais il affiche toujours la page ne réoriente en arrière. Comme vous le voyez, je lis les autorisations de session et le nom des modules est sauvegardé dans le contrôleur, donc je ne pense pas que cela puisse être résolu par un middleware sauf si je fais des middleware pour chaque module (je parle de 30 modules).
Merci d'avoir pris le temps de lire ce
Donc le problème est la redirection? –
'return redirect() -> back()'? – milo526
retour retour() fonctionne de la même manière, je demande une approche différente – NoOorZ24