2017-05-26 8 views
1

routes.rbをRails 5.1:グローブは機能しませんか?

resources :posts 
get '/posts/*missing', to: 'posts#missing' 

/ポスト/ 1はposts#showにリダイレクトしますが、/ポスト/空自は、ここでは動作しませんglobbingとposts#missing
にリダイレクトされません。どうして? image 私はRails 5.1を使用していますが、5.0のチュートリアルと全く同じ設定を見て、グロブが無効なIDをキャッチしました。
rescue_fromを使用できることはわかっていますが、routes.rbでそのようにしたいと思います。どうすればいいですか?

+1

ルートに一重引用符がありませんか、またはその誤植ですか? – Pavan

+0

チュートリアルを教えてください。 –

答えて

1

私はRails 5.1を使用していますが、5.0のチュートリアルと全く同じ設定を見て、グロブが無効なIDをキャッチしました。

これは以前のバージョンのレール(確かに5.0ではない)ではうまくいきませんでした。ポストリソースからのshowルートは/posts/asdfパスに一致し、Posts#show"asdf"とidに変換しようとします。それは長い間ずっと続いてきました。

+0

あなたは正しいです! 'resources:posts'の上に' get'ルートを置くとエラーが修正されます。ではない? – Pavan

+0

@パヴァン:いいえ、それはショールートをシャドーします:) –

+0

ああ!私は、Railsがルートを上からマッチさせ始めるので、エラーを修正するという順序を逆にすることを考えました。 – Pavan

関連する問題