特定のパラメーターとユーザー資格情報をチェックする条件を作成しようとしています。ユーザーが 2 つの資格情報のいずれかを持っておらず、正しいパラメーターを渡すと、安全なログイン画面に転送されます。
これは私がうまくいったことです:
if ($request->getParameter('profile_type') == 'foo' && !$this->getUser()->isAdmin()) {
return $this->redirect('sfGuardAuth/secure');
}
しかし、新しいユーザーグループを追加したので、次のようなものが必要です:
if ($request->getParameter('profile_type') == 'foo' && (!$this->getUser()->isAdmin() || !$this->getUser()->isFaculty()) {
return $this->redirect('sfGuardAuth/secure');
}
したがって、管理者または教職員でない場合は、リダイレクトを取得します。
これは構文またはロジックの問題ですか?
アップデート
これは機能していますが、論理的に間違っているようです
if (($request->getParameter('profile_type') == 'foo') && (!$this->getUser()->isAdmin() && !$this->getUser()->isFaculty())) {
return $this->redirect('sfGuardAuth/secure');
}