Rails 3 – 在创建帐户后自动登录用户
在我的signup_process
,我有两个方法signup_process
和login
。 我想在signup_process
调用成功后自动为用户调用login
。
这可能吗? 在其他语言框架中,我通常只是通过传递用户名和密码的signup_process
操作直接调用login
控制器操作 – 但我认为这在Rails中是不受欢迎的。
有没有办法将用户数据发布到我的控制器的users.login
操作?
这必须是一种常见的模式 – 我错过了什么? 🙂
提前致谢!
不确定你的意思是皱眉头,但这是一种方式
class UsersController < ... def signup // Do some stuff do_login(username, password) // render or redirect as you wish end def login do_login(username,password) // render or redirect as you wish end private def do_login(username,password) // do the actual login processing // can even render or redirect here if it's common to both setup and login end end
那会做你想要的吗?
那么,登录操作有什么作用?
最有可能的是,它在会话中设置了一些指示用户已登录的内容。在创建用户之后,您可以这样做。
调用控制器动作没有意义,因为它最有可能与视图/表单连接。
如果您仍然觉得需要通过它,请提供有关登录操作的更多信息。