{}を表示するコードは入れていないのですが、ブラウザ上に{}が表示されてしまいます。
どうすれば消せるのでしょうか?わかる方おりましたらお教えください。
コードは以下のようになっております。
index.html.erb
<table class="form"> <%= form_tag(controller: "dengonban", action: "index") do %> <tr> <td>名前:</td> <td><%= text_field_tag("name") %></td> </tr> <tr> <td>メール</td> <td><%= text_field_tag("mail") %></td> </tr> <tr> <td>メッセージ</td> <td><%= text_area_tag("msg", '', size: "50x3") %></td> </tr> <tr> <td></td> <td><%= submit_tag("Click") %></td> </tr> <% end %> </table> <table class="dengon"> <tr> <th style="width:50%">メッセージ</th> <th>名前</th> <th>メール</th> <th>投稿日時</th> </tr> <%= @dengon_data.each do |key,obj| %> <tr> <td class="msg"><%= obj['msg'] %></td> <td class="name"><%= obj['name'] %></td> <td class="mail"><%= obj['mail'] %></td> <td class="time"><%= Time.at(key.to_i) %></td> </tr> <% end %> </table>
dengonban.html.erb
<!DOCTYPE html> <html> <head> <title>伝言板</title> <%= csrf_meta_tags %> <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> <%= javascript_include_tag 'application', 'date-turbolinks-track': 'reload' %> </head> <body> <h1 class="title">簡単伝言板</h1> <%= yield %> <div class="footer">copyright xxxxxxx 2018</div> </body> </html>
dengonban.scss
h1.title { font-size: 20px; color: #999; } .form { margin: 50px 0px; } .form tr td { color: #999; padding: 0px 10px; font-size: 14px; } th{ background-color: #999; color: #eee; font-size: 14px; padding: 2px; } .dengon tr td { background-color: #eee; color: #666; padding: 10px 5px; } td.msg { font-size: 12px; } td.name { font-size: 12px; } td.mail { font-size: 12px; } td.time { font-size: 9px; } div.footer { border-style: solid; border-width: 1px 0px 0px 0px; border-color: #999; margin: 50px 0px 0px 0px; padding: 3px 0px 0px 0px; color: #999; font-size: 12px; text-align:right; font-size:9px; }
dengonban_controller.rb
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:param['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/ツールのバージョンなど)
rails 5.1.5
gem 2.7.6
windows8
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー