Я пытался решить эту проблему, но безуспешно. У меня есть Agent Model
, где я хочу иметь нормальных агентов и супер агентов. Обычные агенты могут регистрировать благотворителей, в то время как суперагенты могут регистрировать агентов, а также просматривать благотворителей нормального агента. Я хочу разделить их так, чтобы обычный агент не мог получить доступ к панели мониторинга супер-агента. Поэтому я создал Super agent middleware
следующим образом:
use Closure;
use Auth;
class Agent
{
public function handle($request, Closure $next)
{
return $next($request);
}
}
my AgentLoginController следующим образом:
class AgentLoginController extends Controller
{
use AuthenticatesUsers;
protected $redirectTo = '/benefactorDashboard';
public function login(Request $request)
{
$input = $request->all();
$this->validate($request, [
'phoneNumber' => 'required',
'password' => 'required',
]);
if(auth()->attempt(array('phoneNumber' => $input['phoneNumber'], 'password' => $input['password'])))
{
if (auth()->user()->is_admin == 1) {
return redirect()->route('agents.dashboard');
}else{
return redirect()->route('benefactors.dashboard');
}
}else{
return redirect()->route('agents.signin')
->with('error','Phone Number or Password Are Wrong.');
}
}
}
Я получаю * Too may redirects *: (
Есть ли способ, как я могу это исправить? :)
вот мои агенты Таблица
Schema::create('agents', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('surname');
$table->string('firstName');
$table->string('secondName');
$table->string('idNumber')->unique();
$table->string('phoneNumber');
$table->string('email')->nullable();
$table->string('password');
$table->boolean('systemAdmin')->nullable();
$table->rememberToken();
$table->timestamps();
});
}