:on => :create validation weirdness

Show your controller code.

def new
      @user = User.new
    end

def create
      @user = User.new(params[:user])
      if request.post?
        if @user.save
          session[:user] = User.authenticate(@user.email,
@user.password)
          flash[:message] = "You are now a member of Cooking Friend!"
          redirect_to :action => "show", :id => @user.id
        else
          flash[:warning] = "Uh oh. You aren't signed up."
        end
      end
    end

Here's how it should be:

   def new
     @user = User.new
   end

def create
     @user = User.new(params[:user])
     if request.post?
       if @user.save
         session[:user] = User.authenticate(@user.email, @user.password)
         flash[:message] = "You are now a member of Cooking Friend!"
         redirect_to :action => "show", :id => @user.id
       else
         flash[:warning] = "Uh oh. You aren't signed up."
         render :action => "new" #this is the missing line
       end
     end
   end

That did it. Duh. :slight_smile: Thanks a lot!