I can not save dates

18 views
Skip to first unread message

Luis Ruiz Figueroa

unread,
Mar 3, 2015, 12:38:07 PM3/3/15
to jsp...@googlegroups.com
in many applications can not save data containing dates or times, in my view the directive shows me a good date format, but when saving the data format changed for another.


    json ng-model Actividad: {"Nombre":act1,"Fecha":"2015-03-03T03:00:00.000Z","Hora":"1970-01-01T03:00:00.000Z","observacion":"obs"}

    <input type="text" ng-model="Actividad.Nombre" placeholder="Nombre de actividad">
    <input ng-model="Actividad.Fecha" type="date" >
    <input ng-model="Actividad.Hora" type="time"  >
    <textarea ng-model="Actividad.observacion" placeholder="Observación"></textarea>
    
        <ons-button modifier="large"  ng-click="addTodo(Actividad)" ></ons-button>




from my debugger I can visualize this

    Actividad: Object
    Fecha: Tue Mar 03 2015 00:00:00 GMT-0300 (Hora estándar de Argentina)
    __proto__: Invalid Date
    Hora: Thu Jan 01 1970 00:00:00 GMT-0300 (Hora estándar de Argentina)
    __proto__: Invalid Date
    Nombre: "act1"
    observacion: "obs"

Sergio Castillo

unread,
Mar 3, 2015, 12:44:34 PM3/3/15
to jsp...@googlegroups.com
Where did your change appear? In server?
--
Has recibido este mensaje porque estás suscrito al grupo "JavaScript Perú" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a jsperu+un...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Luis Ruiz Figueroa

unread,
Mar 3, 2015, 2:52:30 PM3/3/15
to jsp...@googlegroups.com

Ud habla español??

Has recibido este mensaje porque estás suscrito a un tema del grupo "JavaScript Perú" de Grupos de Google.
Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/jsperu/4PaYSKmkCrM/unsubscribe.
Para anular la suscripción a este grupo y a todos sus temas, envía un correo electrónico a jsperu+un...@googlegroups.com.

Sergio Castillo

unread,
Mar 3, 2015, 3:52:01 PM3/3/15
to jsp...@googlegroups.com
Si también.

Luis Ruiz Figueroa

unread,
Mar 3, 2015, 4:01:18 PM3/3/15
to jsp...@googlegroups.com
gracias, mira lo que sucede es.  me pasa tanto con aplicaciones con cordova o aplicaciones con html5/javascript   antes las fechas me las guardaba super bien si era fecha me lo guardaba en un formato MM-dd-YYY pero ahora no las guarda, busque cual puede ser el problema, la consola no me arroja ningun problema entonces lo depure y puse un punto de interrupción de el método que recibe los datos, y me encuentro con que el método recibe la fecha con un formato de fecha largo y con un mensaje que la fecha es invalida, esto me pasa lo mismo con el tiempo


Imagen integrada 1

y no guarda ese dato, entonces lo que hice fue usar new Date()
y este me entrega una fecha valida "2015-03-03T03:00:00.000Z", pero no pasa lo mismo con timer

Imagen integrada 2

time= "1970-01-01T17:00:00.000Z"

 

 
Logo

​Luis Ruiz F.
​Administración - Web Master
81801756 · luisruiz...@gmail.com 

Tu Chillan

  facebook twitter    Google+  

Alfredo Sumaran

unread,
Mar 3, 2015, 4:05:16 PM3/3/15
to jsp...@googlegroups.com
has probado usar http://momentjs.com/? trabajar con fechas en JS en engorroso, es mejor usar una biblioteca para manipular fechas.​

Luis Ruiz Figueroa

unread,
Mar 3, 2015, 4:22:44 PM3/3/15
to jsp...@googlegroups.com

Si e tratado pero tengo el mismo problema. Lo mas raro es que estaba funcionando muy bien de de un día a otro dejaron de funcionar

El mar 3, 2015 6:05 PM, "Alfredo Sumaran" <a.su...@gmail.com> escribió:
has probado usar http://momentjs.com/? trabajar con fechas en JS en engorroso, es mejor usar una biblioteca para manipular fechas.​

--

Juan La Jara

unread,
Mar 4, 2015, 8:28:42 PM3/4/15
to jsp...@googlegroups.com
Como recomendación podrías empezar a tratar a las fechas y tiempo como un POSIX time ( también conocido como epoch etc ) que es un número que representa en segundos el avance del tiempo ( más info: http://en.wikipedia.org/wiki/Unix_time ), y dejar para la lógica de presentación el parsing de este número. Es decir, guardar haciendo una conversión de la fecha input a POSIX time y cuando muestres los datos hacer otra conversión.

Por lo que cuentas estabas grabando la fecha en cierto formato y de la nada dejo de hacerlo porque la fecha empezó a ser incorrecta. Eso puede ser por factores externos como que el navegador decidió que el formato de fechas cambie o cosas raras como las zonas horarias, como han dicho, trabajar con fechas/tiempo es tedioso, lo más recomendable que he encontrado para la sanidad mental es usar este estándar que es bien aceptado, en JavaScript Date.now() devuelve un POSIX.

saludos

Luis Ruiz Figueroa

unread,
Mar 4, 2015, 8:31:52 PM3/4/15
to jsp...@googlegroups.com
hola gracias por la respuesta, e solucionado hasta el momento el problema con momentJs  moment().fotmat() , y esto me ayuda bastante gracias .
Reply all
Reply to author
Forward
0 new messages