2019年12月27日金曜日

Rails 6.0にアップデートすると ArgumentError: Invalid formats: "json" エラーが発生するようになった

発生したエラー

Rails 5.2.3 → 6.0.2にアップデート後、テストを実行すると下記のエラーが発生

ArgumentError: Invalid formats: "json"

Controllerで下記の記述をしている箇所で発生している

render "index", formats: "json", handlers: "jbuilder"

解決策

Rails ガイドの レイアウトとレンダリング > 2.2.12.5 :formatsオプション を参照すると、以下のような例が記載されている

render formats: :xml
render formats: [:json, :xml]

なので "json" をシンボルの :json にしてみると、エラーが発生しなくなった。

render "index", formats: :json, handlers: "jbuilder"

環境

Windows 10
Ubuntu 18.04.1 LTS (Windows Subsystem for Linux)
Ruby 2.5.3
Rails 6.0.2.1

0 件のコメント:

コメントを投稿