kein Request bei Hook?

hi, ich muss an die Daten aus dem aus dem Formular bei addArticle kommen. dazu habe ich mich auf sBasket::sAddArticle::after registriert.  leider scheint es hier kein Request() zu geben. 

Hier meine Funtion:

 public function onBasket_AddArticle_After(\Enlight_Hook_HookArgs $args)
    {
        $request = $args->getSubject()->Request();
        $params = $request->getParams();
        Shopware()->Container()->get('pluginlogger')->error('Params on AddArticle', array($params));

    }

Fehlermeldung ist entsprechen:

Uncaught Error: Call to undefined method Shopware_Proxies_sBasketProxy::Request() 

 

Kann mir jemand verraten wie ich an die Post-Daten komme? Ich möchte an dieser Stelle Daten aus dem Formular in Felder aus s_order_basket_attributes schreiben.

Vielen Dank.

Hallo,

in der sBasket Klasse ist es echt nicht so einfach an den Request zu kommen…
Aber du kannst über die Services gehen:

und dann in deiner Subscriber Klasse sowas hier machen:

request = $requestStack->getCurrentRequest();
    }

}

Grüße Lukaschel

1 Like

@Lukaschel schrieb:

Hallo,

in der sBasket Klasse ist es echt nicht so einfach an den Request zu kommen…
Aber du kannst über die Services gehen:

hi, vieln Dank erstmal. leider funktioniert das so nicht. Hier bekome ich dann einen Uncaught Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: The service “mein_plugin.subscriber.frontend” has a dependency on a non-existent service “request_stack”.  Damit geht dann gar nichts mehr :wink:

 

offensichtlich findet er den Service nicht. auch ein 

hilft nicht.

jemand eine Idee?

Ja das MeinPlugin war nur ein Platzhalter da musst du schon deine Daten eintragen

@Lukaschel schrieb:

Ja das MeinPlugin war nur ein Platzhalter da musst du schon deine Daten eintragen

das ist mir klar. das habe ich nur hier fürs forum geändert. :wink:

ok, ich habs. request_stack findet er bei mir nicht. Ich hab’s jetzt mal mit front versucht. 

public function __construct($front)
    {
        $this->request = $front->Request();
    }

Damit kan ich dann einfach mit 

$this->request->getParams();

auf die parameter zugreifen.