Rails Valida Impede Save
Tenho um modelo de usuário como este:
class User < ActiveRecord::Base
validates :password, :presence => true,
:confirmation => true,
:length => { :within => 6..40 }
.
.
.
end
No modelo de usuário, tenho uma coluna billing_id na qual desejo salvar em um OrdersController semelhante a este:
class OrdersController < ApplicationController
.
.
.
def create
@order = Order.new(params[:order])
if @order.save
if @order.purchase
response = GATEWAY.store(credit_card, options)
result = response.params['billingid']
@thisuser = User.find(current_user)
@thisuser.billing_id = result
if @thisuser.save
redirect_to(root_url), :notice => 'billing id saved')
else
redirect_to(root_url), :notice => @thisuser.errors)
end
end
end
end
Por causa devalidates :password
no modelo de usuário,@thisuser.save
não salva. No entanto, depois de comentar a validação,@thisuser.save
retorna verdadeiro. Este é um território desconhecido para mim, porque pensei que essa validação só funcionava ao criar um novo usuário. Alguém pode me dizer sevalidates :password
deve funcionar sempre que tento salvar no modelo de usuário? Obrigad