Laravel'de yönlendirme (redirect), bir isteğin belirli bir URL'ye veya rotaya yönlendirilmesi işlemidir. Bu, kullanıcıları farklı sayfalara yönlendirmek, form işlemleri sonrasında başka bir sayfaya gitmek veya yetkilendirme kontrolleri sonucunda erişim izni olmayan kullanıcıları başka bir yere yönlendirmek gibi durumlar için kullanılır. Laravel bu işlemleri gerçekleştirmek için çeşitli yöntemler sunar.
Temel Yönlendirmeler
1. Rota veya Controller'a Yönlendirme
Bir rota ismi veya controller aksiyonu kullanarak yönlendirme yapabilirsiniz:
// Bir rota ismi kullanarak yönlendirme return redirect()->route('routeName'); // Bir controller aksiyonuna yönlendirme return redirect()->action('ControllerName@methodName');
2. Belirli Bir URL'ye Yönlendirme
Kullanıcıyı belirli bir URL'ye yönlendirmek için:
return redirect('url');
3. Önceki Sayfaya Yönlendirme
Kullanıcıyı önceki sayfaya yönlendirmek için:
return back();
Yönlendirme ile Veri Gönderme
Yönlendirme yaparken aynı zamanda flash oturum (session) verisi gönderebilirsiniz. Bu, yönlendirme sonrası sayfada kullanıcıya mesajlar göstermek için kullanışlıdır.
return redirect('form')->with('status', 'Form başarıyla gönderildi!');
Yönlendirme Sonrası Giriş Yapma veya Oturumu Kapatma
Kullanıcıyı yönlendirirken aynı zamanda giriş yapma veya oturumu kapatma işlemleri yapabilirsiniz:
// Giriş yapma Auth::login($user); return redirect()->intended('dashboard'); // Oturumu kapatma Auth::logout(); return redirect('/');
Durum Kodları ile Yönlendirme
HTTP durum kodlarını da yönlendirme sırasında belirtebilirsiniz. Örneğin, 301 kalıcı yönlendirme durum kodunu kullanmak:
return redirect('new-url', 301);
İleri Seviye Yönlendirmeler
Laravel, yönlendirme işlemlerini daha da özelleştirmek için ek yöntemler sunar. Örneğin, withErrors yöntemi ile doğrulama hatalarını bir görünüme yönlendirme sırasında geçirebilirsiniz:
return redirect('form') ->withErrors($validator) ->withInput();
Yönlendirmeye URL Parametreleri Gönderme:
route:
Route::get('/posts/{id}/{postid}',[PostController::class,'show'])->name('posts.show');
controller:
$id = 5; $postid = 6; return redirect()->route('posts.show',[$id,$postid]);
blade;
{{$title}} <div>{{$postid}}</div>
Bu örnekte, doğrulama hataları ile birlikte kullanıcı girdisi de flash oturum verisi olarak saklanır, böylece form sayfasında hataları ve önceden girilmiş değerleri gösterebilirsiniz.
Laravel'de yönlendirmeler, web uygulamanızın farklı bölümleri arasında akıcı bir gezinme deneyimi oluşturmanıza olanak tanır. Uygulamanızın ihtiyaçlarına göre çeşitli yönlendirme yöntemlerini ve özelliklerini kullanarak kullanıcı etkileşimlerini yönetebilirsiniz.
0 Yorum
Önerilen Yorumlar
Görüntülenecek yorum yok.