おはようございます 私の Ruby On Rails アプリケーションでは、勝敗の統計カウンターを構築しようとしています。これらの統計は、マイ ページのサイドバーに表示され、常に表示されます。これらの値については、Stats という名前のモデルを使用します。統計情報はグローバルに利用できるようにする必要があります。これは、統計情報をすべての面に表示したいので、application_helper.rb に配置するためです。また、管理者のみに表示される [勝ちの追加] または [負けの追加] リンクをクリックすると呼び出される 2 つのアクションもあります。リンクをクリックすると、メイン ページにリダイレクトされます。現時点では、誰かがサイトにアクセスしたり更新したりするたびに、両方のカウンターが増加します。この問題を数時間解決しようとしていますが、まだ解決できません。
私のapplication_helper
module ApplicationHelper
def stats
@stats = Stats.find(1)
end
def addwin
@stats = Stats.find(1)
@stats.update_attribute(:wins, @stats.wins+1)
end
def addloss
@stats = Stats.find(1)
@stats.update_attribute(:loss, @stats.loss+1)
end
終わり
サイドバーが配置されている私の application.html.erb ファイルの抜粋:
<tr><td>Dotards StatsTracker</td></tr>
<tr><td>Wins: </td><td style="color:green"><%= stats.wins%></td></tr>
<tr><td>Losses: </td><td style="color:red"><%= stats.loss%></td></tr>
<hr>
</table >
<%if user_signed_in? && current_user.admin? %>
<small><%= link_to "Add Win", news_index_path(addwin) %>|<%= link_to "Add Loss", news_index_path(addloss)%></small>
<% end %>
他に何ができるかわからないので、誰かが私を助けてくれたら最高です。事前にどうもありがとうございました。