2017-11-05 2 views
0

Was sind die Regeln für meine ziemlich url sein wird, wenn ich das folgende Szenario haben:Yii2 - Pretty Url - Domain Controller/Aktion mit Parametern

Links wie diese, wo Parameter variieren.

domain/?bt=<token>&e=<email>  

oder

domain/?lt=<token>&e=<email> 

dann sollten in einem Controller/action verarbeitet werden. dh. mycontroller/get

Auch sollten Parameter von $ _GET innerhalb der Aktion zugegriffen werden.

+0

whta meinst du mit bt oder lt? .. Was ist der Unterschied zwischen den beiden Probe? ... zeigen Sie eine echte Probe von, was Sie brauchen .. – scaisEdge

+0

http: // localhost: 8080/myapplication/web/index.php? r = öffnen-msg/get & bt = 123 & e = [email protected] oder http: // localhost: 8080/myapplication/web/index.php? r = click/get & bt = 456 & e = [email protected] bt und lt sind nur Parameter. mit diesen Links, ich möchte es zu mycontroller/get –

Antwort

0

ist die einfachste Art und Weise über die Verwendung von UrlHelper basierend

use yii\helpers\Url; 

$myUrl = Url::to(['your_controller/your_action', 'bt' => 123, 'e' => '[email protected]']); 

Mit der UrlHelper Funktion URL :: to .. die URL, die Sie brauchen, ist richtig gebildet abhängig von der Konfiguration urlManager Sie in Ihrer Konfigurationsdatei festgelegt haben und der Parameter ein Manager wie im Beispiel wie Eintrag in einem Array zeigen.

Die Post oder get-Methode ist auf die Art der metho Sie in Ihrem ULR-Anruf verbunden, wenn keine anderen Werte angegeben sind die URL gebildet wird, als ein
erhalten und Sie können die Werte, die Sie in $_GET['bt'] müssen erhalten und $_get['e']

http://www.yiiframework.com/doc-2.0/yii-helpers-url.html

http://www.yiiframework.com/doc-2.0/yii-web-urlmanager.html

http://www.yiiframework.com/doc-2.0/guide-runtime-routing.html

+0

verarbeitet werden Vielen Dank ScaisEdge, aber es passte nicht als eine Lösung für mein Problem. –

0
'urlManager' => [ 
     'enablePrettyUrl' => true, 
     'showScriptName' => false, 
     'rules' => [ 
      '<controller:\w+>/<id:\d+>' => '<controller>/view', 
      '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', 
      '<controller:\w+>/<action:\w+>' => '<controller>/<action>', 
      '' => 'call-backs/get', 
      'unsubscribes' => 'unsubscribes/get', 
     ], 
    ], 

@scaisEdge, danke für die Beantwortung meiner Frage. vielleicht ist meine Frage nicht so klar, aber das ist die Lösung, die ich für meine Frage nach einem harten Fund von Hinweisen und Tipps online gemacht habe.

Alles, was ich wollte war, dass, wenn ein Benutzer auf einen Link klickt, die Hauptseite/Hauptdomain erreicht, wird es zu meinem yii Projekt gehen (beabsichtigt, ein Webservice oder eine API zu sein), dann wird von a präziser Controller und Aktion.

'' => 'call-backs/get' 

Der obige Code beantwortet die Frage. Prost.