这是对许多用户以及使用 Rails 4.0 并遵循更新教程的用户提出的一个常见问题的答案,
由于这个问题的答案已由 Michael Hartl 的更新版本的Railstutorial(rails 4.0)更新
我在几乎所有与这个问题相关的帖子中都发现,解决这个问题的方法是在users_controller.rb文件中添加这些行
before_filter :signed_in_user_filter, only: [:new, :create]
.
.
.
def signed_in_user_filter
if signed_in?
redirect_to root_path, notice: "Already logged in"
end
end
但是此解决方案仅适用于localhost:3000/signup但不会对localhost:3000/ signin 执行任何操作,因为它是针对 railstutorial(Rails 3.0)给出的解决方案。它不适用于那些关注 Railstutorial(Rails 4.0)。
对于这个问题的参考,你可以看到这篇文章Railstutorial:exercise 9.6