mirror of
https://github.com/filamentphp/filament.git
synced 2026-09-24 15:42:09 +08:00
Add the ability to define a post logout route
This defaults to filament.auth.login
This commit is contained in:
@@ -51,6 +51,17 @@ return [
|
||||
'guard' => env('FILAMENT_AUTH_GUARD', 'filament'),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Logout redirect URL
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Sometimes you may wish to lead to a different route after logging out.
|
||||
|
|
||||
*/
|
||||
|
||||
'logout_redirect_route' => 'filament.auth.login',
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Pages
|
||||
|
||||
@@ -18,6 +18,6 @@ class Logout extends Component
|
||||
{
|
||||
Filament::auth()->logout();
|
||||
|
||||
return redirect()->route('filament.auth.login');
|
||||
return redirect()->route(config('filament.logout_redirect_route', 'filament.auth.login'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace Filament\Tests\Feature\Auth;
|
||||
use Filament\Http\Livewire\Auth\Logout;
|
||||
use Filament\Models\User;
|
||||
use Filament\Tests\TestCase;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Livewire\Livewire;
|
||||
|
||||
class LogoutTest extends TestCase
|
||||
@@ -22,4 +23,27 @@ class LogoutTest extends TestCase
|
||||
|
||||
$this->assertGuest();
|
||||
}
|
||||
|
||||
/** @test */
|
||||
public function can_log_out_with_user_defined_route()
|
||||
{
|
||||
Route::get('/custom-post-logout', [
|
||||
'as' => 'logout.custom',
|
||||
'action' => function () {
|
||||
return 'This is a custom logout route';
|
||||
},
|
||||
]);
|
||||
|
||||
config()->set('filament.logout_redirect_route', 'logout.custom');
|
||||
|
||||
$user = User::factory()->create();
|
||||
|
||||
$this->be($user);
|
||||
|
||||
Livewire::test(Logout::class)
|
||||
->call('submit')
|
||||
->assertRedirect(route('logout.custom'));
|
||||
|
||||
$this->assertGuest();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user