Pereiti prie turinio

Pagalbos su apmokėjus siunčiamu atsakymu / Drupal 8 routes


Rekomenduojami pranešimai

Sveiki, nežinau kaip išspręsti problemą. Galbūt kas nors padėtumėte. Parduotuvėje apmokėjus užsakymą yra nukreipiama į pagrindinį puslapį:

 

 

public function payseraAccept()
   {
       return $this->redirect('<front>');
   }

   public function payseraCancel()
   {
       return $this->redirect('<front>');
   }

 

 

aš noriu, kad apmokėjus užsakymą nukreiptų ne į pagrindinį puslapį, o į kitą. Padarius taip neveikia -

return $this->redirect('https://manopuslapis.lt/uzsakymas-patvirtintas');

 

Rašo - Svetainėje nenumatyta klaida. Prašome pabandyti vėliau.

 

Symfony\Component\Routing\Exception\RouteNotFoundException: Route "https://manopuslapis.lt/uzsakymas-patvirtintas" does not exist. in Drupal\Core\Routing\RouteProvider->getRouteByName() (line 187 of core/lib/Drupal/Core/Routing/RouteProvider.php).

 

Taigi, ar galima kažkaip kitaip užrašyti tą return eilutę, kad veiktų nukreipimas į manopuslapis.lt/uzsakymas-patvirtintas, ar būtinai reikia kurti tą route?

update Išspręsta

Redagavo ovsas1
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Iš error'o galima spręsti kad $this->redirect() funkcija tikisi route'o pavadinimo, o ne pačio path'o. Ir taipogi iš error'o panašu kad Drupal'e šioje vietoje naudojamas Symfony Routing komponentas - gali pasigooglinti jo dokumentaciją jeigu kas neaišku. Symfony komponentai apskritai labai kokybiški ir gerai sudokumentuoti, dirbau su Symfony kelis metus.

 

P.S. Kurti route'ą yra normali praktika, nes taip kaip tu norėjai padaryti (url įhardcodinimas) yra "code smell". Tam ir buvo sukurtas Routing komponentas, kad chebra nehardcodintų url'ų ir nebuildint'ų query param'ų su string funkcijomis pačiame projekto kode :)))

Redagavo Skraidytojas
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Paantarinsiu kolegai iš viršaus:

 

1. Susikurk route'ą, kuris nukreiptų į /uzsakymas-patvirtintas

2. Panaudok to route'o pavadinimą funckijoje return $this->redirect('route_pavadinimas');

 

Kaip susikurti route'ą:

https://www.drupal.org/docs/8/api/routing-system/introductory-drupal-8-routes-and-controllers-example

Redagavo BigArchi
Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 savaičių...
  • po 2 savaičių...

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...