0

我在将我的网站重定向到不同的页面时遇到问题,如果这个人比某个年龄更年轻。要么,我需要更多的咖啡,要么我把它弄丢了,我似乎看不出我做错了什么。非常感谢。

应用程序/模型/学生.rb

我试图通过重定向将人们发送到不同的站点

 private
  def must_be_over_13
    if birthday && birthday > 13.years.ago
      redirect_to under_13_landing_page_path ``
    end
  end

我定义under_13_landing_page

控制器/学生控制器

 def under_13_landing_page
  end

意见/学生

我做了重定向页面

under_13_landing_page.html

配置/路由.rb

我告诉它重定向到登录页面

get "games_for_kids", to: "students#under_13_landing_page", as: 'under_13_landing_page'

#**的错误**未定义的局部变量或方法`under_13_landing_page_path'

4

1 回答 1

1

rendering并且redirection控制器的责任而不是模型的。您不应该在Model app/models/student.rb中重定向。这是代码失败的原因,因为 Model 无法访问under_13_landing_page_path您的情况下的路由辅助方法。

我建议您boolean从方法中返回一个值,Student#must_be_over_13 然后您可以适当地检查相关控制器redirect

于 2014-07-31T17:49:02.877 回答