私はサーバーベースのソリューションを作成しています。データベースにはさまざまな権限を持つ多くのユーザーがおり、アクセスしようとしているモジュールにアクセスする権限があるかどうかを確認する必要があります。私のようなものが含まれているすべてのコントローラでLaravel:ユーザーに許可があるかどうかの確認
:
protected $module = "moduleName";
を私は好きそれを解決しようとした:
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();
}
}
それはメッセージを示していますが、それはまだページが表示され、バックリダイレクトしません。
私はセッションからアクセス許可を読み、モジュール名はコントローラに保存されているので、各モジュールのミドルウェアを作成していない限り、これはミドルウェアでは解決できないとは思われません)。あなたのコードに非常に簡単に修正プログラムがあり、この
だから問題はリダイレクトですか? –
'return redirect() - > back()'? – milo526
return back()は同じですが、私は別のアプローチを求めています – NoOorZ24