ideea ar fi ca eu am nevoie de parametrul ala ca si default indiferent de controllerul sau metoda accesata, la fiecare accesare sau refresh a paginii. la prima accesare a paginii el trebuie setat, eu ma gandeam sa il salvez in session si mai apoi sa fie preluat de acolo. dar nu stiu cum sa il setez ca el sa fie automat ca si parametru URL default…
deci daca eu inteleg corect, ar trebuie daca am 20 de Controllers si fiecare Controller are 5 metode, eu sunt nevoit sa adaug acelasi cod in 100 de locuri…? adica de fiecare data cand dau click undeva pe un link in pagina trebuie sa am grija sa fac redirect catre url(“defaultparameter”)?
Nu stiu tot contextul tau si daca-i bine ce vrei sa faci sau nu.
Ai putea sa verifici/setezi default value intr-un middleware (sau chiar sa faci redirect-ul).
in general ma enerveaza intrebarile de genul asta, pt ca fiecare are motivele sale (pitici pe creier, clienti batuti in cap, specificatii ciudate, etc…)
…dar totusi… de ce ai vrea sa faci asta?
de ex, in exemplul dat de tine, username/profile, sa inteleg ca username-ul e variabila? de ce nu profile/username? care-i logica? ai controllerul vasile si accesezi metoda profile? de ce nu doar profile si daca lipseste parametrul folosesti username-ul userului logat?\
ideea e ca nu e nimeni logat. e un site gen, un client i-si salveaza date, etc. i-si creeaza ca si un site-portofoliu al lui sa zicem. adica fiecare pagina din site (home, about, skills, projects, contact, etc) ii apartin, is datele salvate anterior de dumnealui. accesand www.site.ro/vasile el are siteul lui. daca nu ar fi acel parametru vasile ar aparea altceva, pagina standard sa zicem.
nu is expert in laravel, il invat de vreo 3 saptamani, am prins ideea lui, pana acum nu am intampinat probleme, sau chiar daca am intampinat dupa ceva bataie de cap le-am rezolvat. acuma am chestia asta si mie greu sa cred ca nu este o solutie…
n-am avut de-a face pana acum cu scenariul asta, dar ai putea incerca ceva de genul route::get(’{username}’, …), route::get(’{username}/profile’, …), etc. n-am incercat, nu stiu daca functioneaza, teoretic ar trebui. dar trebuie sa ai grija la ordinea rutelor daca faci asa ceva. oricum o sa-ti faca probleme.
da exact asta e problema ca daca fac asta in route::get(), destul de greu spre imposibil, la un moment dat sa nu apara probleme. eu sper sa reusesc cunva cu middleware. sau caut alta solutie decat sa adaug un parametru default in URL, desi asta imi placea cel mai mult… multam’ oricum
ai mai putea sa faci niste verificari inainte sa se incarci rutele si sa faci redirect inainte in caz ca-ti lipseste parametrul respectiv. si dupa aia faci grup de rute
//verifici daca ai ce-ti trebuie, daca nu faci redirect la mysite.com/ce-mi-trebuie
Route::prefix($default)->group(function ($r) {
$r->get('/profile', ['uses' => 'ProfileController@index', 'as' => 'profile.index'];
}