Rails5.1.3でWebアプリケーションの制作、勉強中です。数値を表示する際に3桁ずつ区切って表示したいので、いろいろ調べて
コードは見つけました。しかし、どこに記述してどのようにメソッドを呼び出して対応させたらいいのかわからずに困っています。
やりたいこと及びコードは以下になります。
1、やりたいこと
・データベースの数値を3桁に区切って表示したい。
2、コードは以下になります。
・コードの中で「numstr」とありますがこれは何を意味しているのでしょうか?
調べたコード(これで3桁に区切れるらしい) def commify(numstr) int, frac = numstr.split(".", 2) int = int.gsub(/(\d)(?=\d{3}+$)/,'\1,') int << "." << frac if frac return int end
このコードをどこに記述し、このメソッドをどう使えばいいのかがわからないのです。(コントローラでしょうか?)
htmlは以下です。
show.html.erb <% @title = '得点一覧' %> <h1><%= @title %></h1> <div class="table-wrapper"> <table class="attributes"> <tr><th colspan= "5">得点実績</th></tr> <% p1 = CustomerPresenter.new(@customer, self) %> <tr><th>氏名</th><td><%= p1.full_name %></td></tr> <tr><th>ニックネーム</th><td><%= p1.nickname %></td></tr> <% p5 = SeventeenPresenter.new(@seventeen, self) %> <tr><th>年</th><td><%= p5.year %></td></tr> <tr><th>1月</th><td><%= p5.m_1 %></td></tr> <tr><th>2月</th><td><%= p5.m_2 %></td></tr> <tr><th>3月</th><td><%= p5.m_3 %></td></tr> <tr><th>1クオーター</th><td><%= p5.c_1 %></td></tr> <tr><th>4月</th><td><%= p5.m_4 %></td></tr> <tr><th>5月</th><td><%= p5.m_5 %></td></tr> <tr><th>6月</th><td><%= p5.m_6 %></td></tr> <tr><th>2クオーター</th><td><%= p5.c_2 %></td></tr> <tr><th>7月</th><td><%= p5.m_7 %></td></tr> <tr><th>8月</th><td><%= p5.m_8 %></td></tr> <tr><th>9月</th><td><%= p5.m_9 %></td></tr> <tr><th>3クオーター</th><td><%= p5.c_3 %></td></tr> <tr><th>10月</th><td><%= p5.m_10 %></td></tr> <tr><th>11月</th><td><%= p5.m_11 %></td></tr> <tr><th>12月</th><td><%= p5.m_12 %></td></tr> <tr><th>4クオーター</th><td><%= p5.c_4 %></td></tr> </table> </div> <div class="table-wrapper"> <div class="links"> <%= link_to '個人成績表画面へ戻る', :individual_customer_record %> </div> </div> <div class="table-wrapper"> <div class="links"> <%= link_to 'トップ画面へ戻る', :staff_root %> </div> </div>
m_1m_12, c_1c_4カラムに数値が入っています。この数値を3桁ずつに区切って表示したいのです。
特に def commify(numstr) の numstr がわからないのですが、このままでいいのか、それともカラム名とか何か他の値などを
記述するのでしょうか? 使い方と合わせて教えてください。
どなたか詳しい方、教えていただけないでしょうか?よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/29 03:47