Bir kaç farklı video , birkaç github koduna baktım ve neredeyse hiçkimse dökümantasyondaki
https://laravel.com/docs/10.x/validation#form-request-validation
/**
* Store a new blog post.
*/
public function store(StorePostRequest $request): RedirectResponse
{
// The incoming request is valid...
// Retrieve the validated input data...
$validated = $request->validated();
bu yukarda bulunan $validated = $request->validated();
satırı kullanmıyor sadece $request->content
diyerek amacına ulaşıyor ve dogrulamadan geçip geçmediğini gösteriyor ,test ediyor , uyguluyor vs
gercektende form request içindeki tüm kurallar onlarca kere test etmeme ragmen düzgün şekilde çalışıyor
$validated = $request->validated(); --------> $validated['content'];
ile bunu kullanmadan direk
$request->content aynı şekilde çalışıyor .
validated() form request içindeki rules e yazılan kuralları denetlemek için değilmi ?
@mgsmus hocadan dan bir alıntı
Form Request kullandığınızda $request->input('content') yerine $request->validated() kullanmanız lazım. Yani şu şekilde:
$data = $request->validated(); $content = $data['content'];
çünkü form request içindeki bazı değişiklikler validated() yöntemi ile gelen parametrelere yansır ama siz input ile çekerseniz validasyonu hiçe sayıp direkt gelen parametreyi almış oluyorsunuz. Yani form request kullanınca $request->input() ile aldığınız parametre validasyondan geçmemiş hali ile çekiliyor, bu güvenlik sorunlarına ya da istenmeyen durumlara sebep olabilir.
input ile çekiyorum validasyonu hiçe saymıyorki rule içindeki tüm kuralları tastamam uyguluyor . biraz kafam karıştı