私の情報のソースは、セクション 2.9 です。
[http://guides.rubyonrails.org/routing.html#connecting-urls-to-code][1]
私がやろうとしているのは、カスタム アクション「検索」と対応するビューを追加することです。
したがって、ドキュメントに記載されているように、config/routes.rb ファイルに次のコードを追加しました。
resources :dimensions do
collection do
get "search"
end
end
また、dimensions_controller ファイルで次のように定義しました。
def search
@dimensions = Dimension.all
respond_to do |format|
format.html # search.html.erb
format.json { render json: @dimensions }
end
end
その後、Rails サーバーを停止して再起動しましたが、/dimensions/home に移動すると、まだ次のエラー メッセージが表示されます。
Couldn't find Dimension with id=search
また、私のパラメータが次のとおりであることを示しています。
{"id"=>"search"}
では、/dimension/search を show アクションではなくコレクション アクションとして解釈するよう指示するコードがもう 1 つ欠けているのでしょうか。
search_dimensions_path が存在することは確認済みなので、routes.rb ファイルのリソース ブロックが実際にパスを追加していることがわかります。問題を引き起こしているのは、それらを別の検索アクションとして解釈しているだけです。
御時間ありがとうございます。