config.consider_all_requests_local=trueにしたら、Routing Error時に「作成したview」が表示されない。
「Ruby on Rails6実践ガイド」に沿ってアプリを作っていると、この仕様に気づかず4時間ほど詰まってしまったので記事にします。
状況
Windows10home、VirtualBoxにUbuntu、更にDocker入れてRailsアプリ作成。
クライアントによって指定されたURLパスに対応するルーティングが存在しない場合(Routing Error)、デフォルトの
ではなく、自作した
この表示になる。
サーバー実行はターミナル(端末)でこれ。
$ bin/rails s -e production -b 0.0.0.0
原因
本番環境でサーバー立ち上げたらターミナルにログが出ず、エラーの時に何が原因か分かりにくいので、
- config.consider_all_requests_local=false
+ config.consider_all_requests_local=true
と、falseからtrueに変えていたから。
falseに直すとRouting Error時に作成した画面が表示されました。
Rooting Errorになってもviewを表示する設定になっているから、そのviewが出ると思っていました。
他のエラーの時は、ちゃんと作成した画面が表示されるので。
ちなみにfalseにもどしても、railsサーバーを再起動しないと反映されません。
ちなみにconfig.consider_all_requests_localとは
trueにしたらブラウザにエラーレポートが表示され、falseにしたら表示されない。
config/developments/内にあり。
Author And Source
この問題について(config.consider_all_requests_local=trueにしたら、Routing Error時に「作成したview」が表示されない。), 我々は、より多くの情報をここで見つけました https://qiita.com/kazu_kazu/items/970d0861aa9bfffd8561著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .