aşağıdaki kapsamına sahip yolları bir uygulamaya sahip yönlendirir. Hem http://myapp.com/en/foo
hem de http://myapp.com/foo
, aynı denetleyici # eylemine son verir. Harika çalışıyor.Raylar kapsamına sahip rotalar
Şimdi URL'deki yerel ayarlardan kurtulmak istiyorum, ancak eski yolların çalışmaya devam etmesini istiyorum, bu nedenle yalnızca kapsam ifadesini kaldırmanız işe yaramaz. Yerel olmayan URL'ye yönlendirilmek üzere eski yerel tabanlı URL'yi yeniden yönlendirmek istiyorum. Şunun gibi: bunu yapmak için kullanılan
http://myapp/en/foo
yönlendirme
http://myapp/foo
ve hala
http://myapp/foo
çalışmak.
Şimdiye kadar, tek rotalar için Raylar kılavuzlarında yalnızca bir 'yönlendirme' seçeneği olan found. Ama bunun için bir dizi güzergâhı tutmak isterim; 'kapsam' bloğumdaki yollar.
Bu çalışma hakkında nasıl bir fikir var?
scope "(:locale)", :locale => Regexp.new(I18n.available_locales.join('|')) do
get '/en/:ccc' => redirect(path: "%{ccc}")
end
yol değişkeni önce çizgi gerekebilir ve elbette yapabilirsiniz:
Hey! Cevap buradaydı: http://stackoverflow.com/questions/37147319/redirection-in-rails-4-routes/37147544#37147544 –
@Hieu Pham Bana katıldığınız için teşekkürler, ancak çözümünüz bir yönlendirme yapmıyor: | – Stobbej
Hey! Çözüm kabul edildi, benim cevabımın üstünde, bence işe yarayacak, uzun zaman önce sorunuzu işaretledim, şimdi bir çözüm gördüm, sadece farkettim :) –