ProgateでRailsを勉強している際に、あまり見慣れないエラーメッセージに遭遇しました。
お問い合わせすることなく、解決したので記載します。
症状
エラーの内容は、
「We’re sorry, but something went wrong.If you are the application owner check the logs for more information.」
日本語だと、
「申し訳ありませんが、問題が発生しました。アプリケーションの所有者である場合は、ログで詳細を確認してください。」
スタックトレースなど出ていないため、今回コードに手を入れたところでエラー箇所を類推する必要がありました。
また、特定の画面ではなく、どの画面でもこのメッセージが出てくる模様。
ちなみに、Railsの道場コースⅢの「ログアウト機能を作ろう」で発生しました。
解決策
下記の記事を参照して、View側のRubyの処理がエラーの原因になっていると推察できました。
Viewの編集中に「We’re sorry, but something went wrong.If you are the application owner check the logs for more information.」と表示された
さらに、どの画面URLでも同様の症状が出ていることから、Viewの共通部分である「application.html.erb」に該当のエラーがあると断定。
さらに、どの画面URLでも同様の症状が出ていることから、Viewの共通部分である「application.html.erb」に該当のエラーがあると特定できました。
エラーの原因となっていたのは下記でした。
<%= link_to("エラーしている箇所", "/index",{method :post}) %>
そしてこのように直して解決。
<%= link_to("エラーしている箇所", "/index",{method: "post"}) %>
原因
ViewでRubyコードを記述するための<%= %>で構文ミス同じ怒られ方をしてしまったので、<%= %>で構文ミスすると発生する模様。 今回の場合は、{}の中の:の位置がおかしかったせいで、このように怒られたみたいです。 (postのダブルクオートだけ直したら、怒られなくった)お問い合わせすることなく、解決できたので一件落着。