denetleyicimde kullanmak üzere bir "yönlendirme" nesnesi bulmak için şanssız çalışıyorum. _controller, _route ve argümanlarını belirten parametrelerle nesnesine benzer bir nesne olacağını umuyorum. Ben yapmaya çalışıyorum neSymfony2: Request nesnesine benzer Referrer nesnesi?
yeni dilde aynı sayfaya yönlendiren bir Dil değiştirici eylemdir. arasında doğrultuda bir şey:
public function switchLangAction($_locale)
{
$args = array();
$newLang = ($_locale == 'en') ? 'fr' : 'en';
// this is how I would have hoped to get a reference to the referrer request.
$referrer = $this->get('referrer');
$referrerRoute = $referrer->parameters->get('_route');
$args = $referrer->parameters->get('args'); // not sure how to get the route args out of the params either!
$args['_locale'] = $newLang;
$response = new RedirectResponse($this->generateUrl(
$referrerRoute,
$args
));
return $response;
}
Bunu yapmak için başka bir yol olduğunu da mümkündür - Ben raylar içinde "redirect_to: geri" olduğunu biliyorum örneğin yöntemi.
Herhangi bir yardım büyük memnuniyetle karşılanacaktır.
Tamam, teşekkürler, Gild! –
Bu yazıyı yazdıktan sonra Symfony2 hakkında daha fazla şey öğrendim. Daha iyi bir uygulama bulunabilir [burada] (http://stackoverflow.com/questions/7414243/symfony2-help-please-with-backward-uri-referrer-during-switching-locale/7423276#7423276). – gilden