###前提・実現したいこと
to_jsonで出力されるデータのフォーマットを変更したいと考えてます。(後記のサイトを参考にしてます)
うまくいかないのは、オーバーライドするメソッドを記載するファイルが間違っている気がします。
config/application.rb
app/application_controller.rb
を試しました。
複数のモデルがあるので、共通してオーバライドを適用したいと考えてます。
###発生している問題・エラーメッセージ
変更されない(オーバライドしている気配がない)
###該当のソースコード
ruby
1module AppName 2 class Application < Rails::Application 3 # Settings in config/environments/* take precedence over those specified here. 4 # Application configuration should go into files in config/initializers 5 # -- all .rb files in that directory are automatically loaded. 6 config.time_zone = 'Tokyo' 7 end 8 9 class Time 10 def to_json(*a) 11 strftime('%Y年%m月%日').to_json(*a) 12 end 13 end 14end
###試したこと
puts Model.last.to_json
puts JSON.generate(JSON.parse(Model.last.to_json))
(こっちは変更されないのが当たり前だと思いますが、念のため)
いずれも、
"created_at":"2017-10-14T13:30:40.750+09:00"
と、フォーマットが変更されませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
出力されるJSONの形式をカスタマイズする
pry(main)> .ruby --version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux-musl]
pry(main)> .rails --version
Rails 5.0.6
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/17 03:05