Merhaba,
Laravel 11 ile geliştirdiğim bir projede sorunum var.
Rotalarımda yönetim paneli prefix'ini dinamik kullanıyorum:
Route::prefix(config('admin-route-prefix.admin_prefix'))
config dosyamda aşağıdaki şekilde tutuyorum:
<?php
return [
/*
|--------------------------------------------------------------------------
| Default Prefix
|--------------------------------------------------------------------------
| This option controls the default admin route prefix.
*/
'admin_prefix' => env('ADMIN_ROUTES_PREFIX', 'admin'),
];
Auth middleware ve RedirectAuth middleware'ini ezerken sorun yaşıyorum.
bootstrap/app.php;
<?php
use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;
return Application::configure(basePath: dirname(__DIR__))
->withRouting(
web: __DIR__.'/../routes/web.php',
commands: __DIR__.'/../routes/console.php',
health: '/up',
)
->withMiddleware(function (Middleware $middleware) {
$middleware->append(\App\Http\Middleware\SharedDataMiddleware::class);
$middleware->alias([
'appLocaleForAdmins' => \App\Http\Middleware\SetLocaleForAdminRoutes::class,
'localize' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRoutes::class,
'localizationRedirect' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRedirectFilter::class,
'localeSessionRedirect' => \Mcamara\LaravelLocalization\Middleware\LocaleSessionRedirect::class,
]);
$middleware->redirectTo(
guests: 'admin/login', // auth middleware kast ediliyor Authenticate
users: 'admin/' // guest middleware kast ediliyor RedirectIfAuthenticated
);
})
->withExceptions(function (Exceptions $exceptions) {
//
})->create();
Bu çalışan kod. Ben buradaki guests ve users kısmındaki 'admin' kısmını dinamik almam lazım.
route() fonksiyonunu kullanamıyorum hata veriyor.
Bende config('admin-route-prefix.admin_prefix') fonksiyonunu ile çağırayım dedim ama o da kullanılamıyor.
ChatGPT'yi de kullanarak bir iki alternatif deneme yaptım ama webserver hataya düşüyor ve çalışmıyor proje.
ChatGPT son olarak şu kullanımı önerdi:
$adminPrefix = env('ADMIN_ROUTES_PREFIX', 'admin');
Evet, böyle çalışıyor ancak bu seferde production ortamında config cache kullanırsam bunu görmeyecek.
Burada nasıl bir çözüm üretebilirim?