私はバンドhas_many報酬、報酬はバンドに属しています。バンド#1 buy_itemアクションにRails 3、コントローラの作成方法/関連するオブジェクトに基づいて特定の値を控除するモデルメソッド
<% @rewards.each do |r| %>
<b>Reward:</b> <%= r.name %><br>
<b>Cost:</b> <%= r.cost %><br>
<%= button_to "Get This", buy_item_band_path(@band, @reward)%>
<% end %>
buy_item_band_pathルート:私はバンドの報酬をループしていますバンドのショーのページで
。私は両方にアクセスできるように@bandと "r"を渡しています。
私はDeviseでユーザーを処理しているので、私もcurrent_userにアクセスできます。基本的には、ユーザーに報酬を購入させようとしています。ユーザーはポイント属性を持っているので、私はバンドモデルでは、次のような何かをしようとしています:
def pay_for_it
unless current_user.points < self.reward.cost
current_user.points - self.reward.cost
current_user.save
# SEND TWO EMAILS ONE TO THE PURCHASER AND ONE TO THE BAND ADMIN
end
end
モデル法は、私が働くかもしれないと思うだけで何ですが、私はそれを参照する方法を知りませんコントローラは、私がどうすればコントローラでこれを行う必要があるかわからないかどうかわからない。
何か助けていただければ幸いです。あなたは報酬を渡そうとしている場合、そのコードは、おそらくのようになり
おかげ