[Ror-es] Espacios despues de campo de formulario hacen saltar una validación de formato
Andrés gutiérrez
andresgutgon at gmail.com
Sun Mar 14 12:07:19 GMT 2010
Hola a todos. Me esta pasando una cosa extraña. Primero os muestro el código
y luego lo que me parece extraño.
#invitation.rb
validates_format_of :recipient_email, :with => Authlogic::Regex.email
#script/console
>> Authlogic::Regex.email
=> /^[A-Z0-9_\.%\+\-]+@(?:[A-Z0-9\-]+\.)+(?:[A-Z]{2,4}|museum|travel)$/i
#invitations_controler.rb
def create
@invitation = Invitation.new(params[:invitation])
if @invitation.save
flash[:notice] = "Thank you, we will notify when we are ready."
redirect_to root_url
else
render :action => 'new'
end
end
Vale. Lo extraño es que esa validación me peta si en el formulario por lo
que sea me dejo un espacio al final del email. Me dice que ese email no es
válido.
Yo lo he solucionado asi:
def create
@email_strip = params[:invitation][:recipient_email].strip
params[:invitation][:recipient_email] = @email_strip
@invitation = Invitation.new(params[:invitation])
Osea le quito los espacios al campo email y me funciona.
Pero me queda la duda de si es normal que tenga que hacer esta historia para
limpiar de espacios un campo antes de que pase por las validaciones.
¿Hay alguna convención de rails que me estoy saltando? ¿Es culpa de la R.e.
que uso (en esto ando bastante pez)?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20100314/f8550693/attachment.htm
More information about the Ror-es
mailing list