1

事前に少し時間を割いてくれた人に感謝します。これはイライラするほど基本的な解決策であると確信しているため、お詫び申し上げます。

次のような式をどのように適用しますか。

total_score = start_score + sum(per_game_scores)/no_of_games - (time/some_value);

per_game_score... ?の反復ごとに、Rails アプリで値を修正するには

たとえば、これがファンタジー フットボールのシナリオだとします。per_game_scoreプレイヤーの各ゲームの後にフォームを送信し、それに応じてtotal_score統計を更新できるようにしたいと思います...

Rails に非常に慣れていないので、数式を保存する場所、フォーム送信時に数式にアクセスする方法、およびtotal_score値を最新に保つために数式が実行されるようにする方法を除いて、このすべてのプロセスの基本を知っています。

助けてくれてありがとう、私の短い時間でここのコミュニティにすでに非常に感銘を受けています!

4

1 に答える 1

0

そのようなことは、プレーヤーのメソッドとしてうまく機能するかもしれません. 私はあなたがPlayerモデルを持っていると仮定しています。has_many :games

class Player < ActiveRecord::Base
  has_many :games

  before_save :update_total_score

  def update_total_score
    self.total_score = start_score + games.average(:score) - time/some_value
  end
end

before_save次に、コールバックで接続できます。

class Game < ActiveRecord::Base
  belongs_to :player

  before_save :update_player_total_score

  private

  def update_player_total_score
    player.update_total_score
  end
end
于 2013-01-14T13:27:08.873 に答える