0

私は私が構築しようとしている小さなアプリを持っています。ユーザーがWeightモデルに重みと目標を保存できるようにしたいと思いますGoal。ユーザーは毎週新しい体重を入力するように求められますが、アプリに初めて入るとき、または体重が現在の目標以下であるその後の時間にのみ、目標を入力するように求められます。

このアプリの最初の反復で、MVCとRESTのパターンに頭を悩ませるために、ユーザーをweight#newページにリダイレクトして、ウェイトを入力しgoal#new、目標レコードが空白の場合はユーザーをページにリダイレクトしたいと思います。 (アプリに最初にサインアップしたとき)、または現在の最新の体重値が最も多くのレコードの最新の目標値以下であるその他の場合。

私の質問は、コントローラーでこのロジックを設定するにはどうすればよいかということです。

4

1 に答える 1

0

それは簡単なはずです。このようなもの:

def some_action
  # ... do stuff
  if redirect_to_goal?
    redirect_to new_goal_path
  else
    redirect_to some_thing_else_path
  end
end

def redirect_to_goal?
   current_user.goals.empty? || any_other_condition      
end
于 2013-02-27T10:24:39.557 に答える