前提・実現したいこと
発生したInternal server errorの原因を突き止めたい
発生している問題・エラーメッセージ
掌田津耶乃『Ruby on Rails超入門』section2-6「ミニ伝言板を作ろう」を学習中です。
一通りコーディングを済ませ、実際に動作をチェックしたところ、500エラーが出てしまい行き詰ってしまいました。念のため、各ファイルのソースコードを確認しましたが、間違っている点はなく、解決に困っています。
どうかご指導をお願い致します。
Started GET "/dengonban" for ::1 at 2020-04-12 10:05:56 +0900 (0.8ms) SELECT sqlite_version(*) C:/Users/user/Desktop/TestApp/app/controllers/dengonban_controller.rb:42: warning: circular argument reference - msg C:/Users/user/Desktop/TestApp/app/controllers/dengonban_controller.rb:42: warning: circular argument reference - name C:/Users/user/Desktop/TestApp/app/controllers/dengonban_controller.rb:42: warning: circular argument reference - mail Processing by DengonbanController#index as HTML Rendering dengonban/index.html.erb within layouts/dengonban Rendered dengonban/index.html.erb within layouts/dengonban (Duration: 16.9ms | Allocations: 1068) Completed 500 Internal Server Error in 61ms (ActiveRecord: 0.0ms | Allocations: 2794)
該当のソースコード
class DengonbanController < ApplicationController layout 'dengonban' def initialize super begin @dengon_data = JSON.parse(File.read("data.txt")) rescue @dengon_data = Hash.new end @dengon_data.each do |key,obj| if Time.now.to_i - key.to_i > 24*60*60 then @dengon_data.delete(key) end end File.write("data.txt", @dengon_data.to_json) end def index if request.post? then obj = MyData.new(msg:params['msg'], name:params['name'], mail:params['mail']) @dengon_data[Time.now.to_i] = obj data = @dengon_data.to_json File.write("data.txt", data) @dengon_data = JSON.parse(data) end end end class MyData attr_accessor :name attr_accessor :mail attr_accessor :msg def initialize msg:msg, name:name, mail:mail self.name = name self.mail = mail self.msg = msg end end
試したこと
エラーメッセージの内容を検索して解決法を探しましたが、解決に至りませんでした。
補足情報(FW/ツールのバージョンなど)
作成ツール:Microsoft Visual Studio
dengonban_controller.rb:42: と42行目で問題が起きていそうなメッセージです。
が、
省略されているのか 42行目がない?
42行目ってどの行かマークしていただけますか
あなたの回答
tips
プレビュー