HERE IS ONE LOOK OF MY FORM WITH CONTROLLER & MODEL & FORM & DATABASE
HERE IS MY ERROR -----
NoMethodError in UserController#login_submit
undefined method `authenticate’ for #Class:0x36f6cbc
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb:1532:in
method_missing' app/controllers/user_controller.rb:34:in
login_submit’
HERE IS MY USER CONTROLLER-----
class UserController < ApplicationController
layout “home”
def list
@user = User.find(:all)
end
def new
@user = User.new
end
def create
@user = User.new(params[:user])
if @user.save
redirect_to :action => ‘list’
else
redirect_to :action => ‘new’
end
end
def login
@user = User.new
@user.username = params[:user][:username]
end
def login_submit
username = params[:user][:username]
password = params[:user][:password]
if session[“user”] = User.authorize(username, password)
@user = User.find(session[“user”].id)
@user.first_login = 1
@user.save
flash[:notice] = “You are now logged in”
redirect_to :action => ‘create’
else
flash[:error] = “Incorrect username and/or password”
redirect_to :action => ‘list’
end
end
end
HERE IS MY USER MODEL—
class User < ActiveRecord::Base
validates_presence_of :username, :message=>“User Name will not b
blank”
validates_presence_of :password, :message=>“Password cannot be blank”
end
HERE IS MY FORM ----
Login Section
<% form_tag :controller => "user", :action => "login_submit" do %>
Username: <input
id=“user_username” name=“user[username]” size=“15” type=“text” />
Password: <input
id=“user_password” name=“user[password]” size=“15” type=“password”
/>
<%= submit_tag “Login”%>
<% end %>
CREATE TABLE users
(
id
int(11) NOT NULL auto_increment,
username
varchar(64) NOT NULL,
password
varchar(64) NOT NULL,
name
varchar(200) NOT NULL,
email
varchar(150) NOT NULL,
created_at
datetime default NULL,
PRIMARY KEY (id
)
) ;