1


このlocalhost:3000 / site/admin のようなものと一致すると思われるルートがあります

にリダイレクトします

localhost:3000 / en / site / admin


これがこのroutes.rbと一致するはずのルートラインです

match '*path', to: redirect("/#{I18n.default_locale}/%{path}")

しかし、それを照合してlocalhost:3000 / en / site / adminにリダイレクトする代わりに、これに無限にリダイレクトします

http://localhost:3000/en/en/en/en/en/en/en/en/en/en/en/en/en/site/admin
(adds /en until browser complains about infite loop)

この無限ループが発生している理由はありますか?ありがとう

編集

私のroutes.rbファイル全体へのリンク

https://gist.github.com/2323762

4

1 に答える 1

2

リダイレクト先の「/:locale /:path」URLをキャッチするルートがファイルの上位にありますか?そうでない場合、あなたのルートは通り抜けて、「* path」ルート(何にでも一致する)によって再び捕らえられます。

于 2012-04-06T23:01:31.770 に答える