我有一个小应用程序,我正在尝试构建我希望用户能够在Weight
模型中存储权重,并在Goal
模型中存储目标。当用户被要求每周输入一个新的重量时,他们只会被要求在他们第一次进入应用程序时输入目标,或者在重量小于或等于当前目标的任何后续时间内输入目标。
在这个应用程序的第一次迭代中,为了让我了解MVC和REST模式,我希望简单地将用户重定向到weight#new
页面,在那里他们将填充权重,然后将用户重定向到如果目标记录为空白(首次注册应用时为目标记录),或者当前最新权重值低于或等于最新目标值的任何其他情况,请goal#new
页大多数记录。
我的问题是如何在控制器中设置此逻辑。
答案 0 :(得分: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