Object saved before validated?


I'm having a weird problem: When I add a product via webform it's being saved before validated.

Example: I fill out the form for a product named "Test", I forget to type in the price so the error "Price can't be blank" and it returns to the form. After I typed in a price it says "Product 'Test' already exists" because it's been saved the first time already.

Controller: def create_product     Product.prepare_to_save(params[:product])     @product = Product.new(params[:product])     respond_to do |format|       if @product.save         flash[:notice] = 'Product was successfully created.'         format.html { redirect_to :action => 'index' }         format.xml { render :xml => @product, :status => :created, :location => @product }       else         format.html { render :action => "new_product" }         format.xml { render :xml => @product.errors, :status => :unprocessable_entity }       end     end   end

Model:   ..   validates_presence_of :title, :description, :image, :category   validates_numericality_of :price   validates_uniqueness_of :title   ..

Has anyone an idea why this is happening?