Rails + Devise:如何在不同的控制器中调用登录和注册?

时间:2013-03-13 03:23:25

标签: ruby-on-rails-3 devise

这是我的ajax调用的代码

var data = {user: {password: password, email: email}};
$.post('auto_login',data,function(res){
  if(res.success){
    // successfully logged in
  }
  else{
    // failed log in
  }
});

这是我控制器中的代码

def auto_login
  @user = parmas[:user]

  # how do i invoke login here...
  # res = Sessions.new(@user)
  # x = true if res.save

  respond_to do |format|
    format.json{ render :json => { :success => x } }
  end
end

我这样做是因为我有一个按钮,如果未注册的用户点击它会弹出一个模态窗口,要求登录信息或注册到该网站。用户填写所需信息后,如果系统识别出数据有效,则会自动将用户重定向到特定网址。

任何帮助都可以。

谢谢。

1 个答案:

答案 0 :(得分:0)

设备允许您将登录表单放在任何位置。你可以把它放在一个部分或使用JavaScript来显示/隐藏。请按照以下说明操作:

https://github.com/plataformatec/devise/wiki/How-To:-Display-a-custom-sign_in-form-anywhere-in-your-app