Puncte:0

Cum pot obține numele unei rute dacă am obiectul rută?

drapel in

Am un obiect traseu (care poate nu să fie obiectul rutei curente) și trebuie să obțin numele rutei, de ex. entitate.nod.canonică. Nu văd nicio metodă pentru a obține numele direct de la obiect și nici nu o văd nicăieri când inspectez obiectul prin Xdebug.

Știu că pot obține cu ușurință numele rutei curente $nume_rută_actuală = \Drupal::routeMatch()->getRouteName(), dar cum pot obține numele unei rute arbitrare, dacă am obiectul rută.

4uk4 avatar
drapel cn
Probabil că nu te referi la obiectul rută curent, ruta este de ieșire. Nu puteți obține numele rutei de la obiectul rută. Acesta este motivul pentru care au adăugat numele rutei la [RouteProcessorManager::processOutbound](https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21RouteProcessor%21RouteProcessorManager.php/function/RouteProcessorManager%3A% 3Aprocess Outbound/9.2.x). Cu toate acestea, puteți utiliza un procesor de rută pentru a stoca numele rutei în obiectul rută pentru a-l recupera mai târziu.
sonfd avatar
drapel in
Mulțumesc. Încerc să folosesc `hook_domain_source_alter()`, care este apelat de la un procesor de ieșire în modulul domain_source. Poate că cel mai bine este să creez un patch pentru a adăuga route_name la datele transmise la alter hook.
sonfd avatar
drapel in
Alternativ, am găsit o altă postare https://drupal.stackexchange.com/questions/272190/get-route-name-from-path-with-wildcard care ar putea funcționa.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.