0

我正在使用 Clearance 进行身份验证,并且我正在尝试创建一个用户并让他们登录,应该很简单。出于某种原因,user保存得很好,但是当我调用sign_in @user它时,它显示 nil:NilClass 的未定义方法 'sign_in'。我的代码如下。

def create
    @user = user_from_params

    respond_to do |format|
      if @user.save
        sign_in @user
        redirect_to new_company_path
      else
        format.html { render :new }
      end
    end
  end

  private

  def user_from_params
    email = user_params.delete(:email)
    password = user_params.delete(:password)

    User.new(user_params).tap do |user|
      user.email = email
      user.password = password
      user.admin = true
    end
  end

  def user_params
    params.require(:user).permit(:first_name, :last_name, :email, :password)
  end
4

1 回答 1

4

事实证明,我将它与RSpec一起使用,并且需要添加require clearance/rspec到我的spec_helper

于 2014-08-22T01:03:35.213 回答