2016-02-17 32 views

回答

1

为了确保用户会被重定向到根URL,你必须使用一些 before_actionbefore_filter在Rails 3中)到您的控制器。

例如,如果你正在使用Device gem进行认证,就必须添加到您的控制器:

before_action :authenticate_user!more details...

如果你有自己的认证系统,你必须手动实现类似设备的authenticate_user!方法来设置current_user。

如果我正确理解你的问题,你应该明白了。

+0

过滤器之前添加引发另一个问题,这就是为什么我不使用它。 – indb

+0

那么这意味着你在before_filter方法中有不正确的代码,或者它接收到不正确的参数,或者你的'Device'配置不正确(如果你使用它),所以这是你需要解决的另一个问题。因为你错误的技术原因是 - 'current_user'没有设置并且等于'nil',所以你必须把它设置在某个地方。在'before_filter'的帮助下你可以在你的项目的多个地方重复使用它,这是很简单明显的,你可以在其中验证你的用户并设置为'current_user'。这里没有足够的信息来说明更精确的信息。 –

+0

这只是因为我不使用设计路线,它总是移动到设计/ sign_in路径,但我的sign_in路径是不同的。 – indb

相关问题