NoMethodError,未定义的方法登录

时间:2014-10-27 08:45:19

标签: ruby-on-rails

我正在为登录/退出编写一个简单的应用程序,我遇到了错误:

NoMethodError in WelcomeController#create 
undefined method `login' for #<User:0x3dc02c0>

这是我的用户模型

 def self.authenticate(pass)
    user = find_by_pass(pass)   
    if user.nil?
      return nil
    else
      return user
    end
    end

这是我的控制器

def create
    user = User.find_by_username(params[:session][:username])
      if user && user.authenticate(params[:session][:pass])
      login user
      redirect_to root_url                                                     
    else
   render 'index'
    end
    end

这是我的欢迎帮助

 def login(user)
    session[:user_id] = user.id
  end 

这是我的应用程序控制器

protect_from_forgery with: :exception
include WelcomeHelper

请帮我解决这个问题:)

1 个答案:

答案 0 :(得分:0)

尝试这样:

<强> application_controller:

protect_from_forgery with: :exception
def login(user)
    session[:user_id] = user.id
end 

并使用已定义的所有其余方法