Forum: Rails-ES validar fecha en el controlador

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Bb8b17a02e90bcd49a8203f93db42e17?d=identicon&s=25 Oscar Diciomma (zeus_00)
on 2009-03-10 01:50
Hola, mi problema es como validar fecha1 y fecha2 para saber que tengan
el formato correcto desde el controlador, ya que pertenesen a unos
campos de texto en un formulario el cual no tiene asociado un modelo

como detecto si el usuario escribio el formato correcto 20/02/2009 o
20022009 ?

estube googleando pero encontre muy poco y no me ayudo mucho o no me
quedo muy claro.


def search

fecha1 = params[:fecha][:inicio].to_date
fecha2 = params[:fecha][:fin].to_date


@protocolos = Protocolo.find_by_sql ["select * from protocolos where
fecha_entrada between ? and ? ORDER BY protocolos.fecha_entrada ASC",
fecha1, fecha2]


end
7210fa87b741ecfd45010fc7a41b7a5f?d=identicon&s=25 Iván Belmonte (Guest)
on 2009-03-10 03:24
(Received via mailing list)
> como detecto si el usuario escribio el formato correcto 20/02/2009 o
> 20022009 ?

-- Por que dejas que el usuario formatee la fecha a mano?

   http://api.rubyonrails.org/classes/ActionView/Help...

Si no te he entendido mal, creo que un "select_date" solventaría tu
problema.


Salu2,

Iván
--
Real_men_dont_need_spacebars
Eb24172664eda6fe8a2f39c91709b258?d=identicon&s=25 Albert Callarisa (xarc)
on 2009-03-10 07:00
(Received via mailing list)
De todas maneras tampoco te puedes fiar de como te llegan las cosas
desde la
vista, cualquiera con el firebug te podría enviar los parametros mal.
Igual
deberias usar un parser para transformar el string de la fecha a un
objeto
Date para luego enviarlo al modelo.

No se si se podrian poner validates en el modelo suponiendo que la fecha
es
un string y, por ejemplo, validar la fecha con una expresion regular. Me
parece que no porque para rails ese campo es un Date, pero no sabría
decirte
que ocurre al asignarle un string, si pasa el string a los validadores o
se
parsea antes. Sería cuestion de probar.


Saludos
9e94436f8f108df3894576778ad26c14?d=identicon&s=25 Diego Fernandez (Guest)
on 2009-03-10 14:35
(Received via mailing list)
2009/3/10 Oscar Diciomma <ruby-forum-incoming@andreas-s.net>:
> Hola, mi problema es como validar fecha1 y fecha2 para saber que tengan
> el formato correcto desde el controlador, ya que pertenesen a unos
> campos de texto en un formulario el cual no tiene asociado un modelo
>
> como detecto si el usuario escribio el formato correcto 20/02/2009 o
> 20022009 ?
>
> estube googleando pero encontre muy poco y no me ayudo mucho o no me
> quedo muy claro.

¿No te sirve Date.parse?
--
Diego Fernández Fernández

http://simplelogica.net
This topic is locked and can not be replied to.