2009-11-11 14 views
7

¿Cuál sería la convención aceptada para mostrar un rango de fechas en una URL amigable?Convención de URL para el intervalo de fechas

Por ejemplo, en una aplicación de seguimiento de tiempo. En lugar de utilizar la clave principal de la base de datos para un período de pago específico en la URL, me gustaría usar algo más fácilmente distinguible para el usuario.

http://www.mytimesheet.com/11-1-2009-11-14-2009 
http://www.mytimesheet.com/period-beginning-11-1-2009 

Ninguno de los dos parece cortarlo, pero tal vez estoy siendo demasiado crítico.

+0

¿por qué está relacionado este MVC? – skaffman

+0

No es específicamente, por lo que se quitó la etiqueta. –

Respuesta

7

¿Usted ha considerado las fechas en formato ISO, especialmente en su forma compacta: YYYYMMDD, entonces debería ser posible tener:

http://example.com/dates/20091101/20091131 

Específicamente no creo que hay alguna aceptadas convención para esto.

Editar: se trata de encaminar así ...

+0

Esta parece ser la solución más limpia que he visto, y la más sencilla fuera de una cadena de consulta. –

+2

+1. Puede incluir los '-'s también si lo desea; si usa guiones, debe * siempre * utilizar el orden ISO8601 AAAA-MM-DD. – bobince

0

Personalmente, creo que este es el tipo de datos que es el más publicado, en lugar de utilizarse para especificar una ruta.

(a veces si la solución parece roto de esta manera, entonces tal vez el enfoque no es correcto.)

Sin embargo, si realmente desea especificar fechas, tal vez debería considerar un formato que es más probable que debe entenderse de una manera coherente en todas las culturas, tales como aaaa-mmm-dd (por ejemplo 2009-nov-11)

+1

POST parece una muy mala idea aquí, ya que rompería casi cualquier tipo de experiencia de UI (sin marcadores, sin recarga sin una ventana emergente molesto, en todo caso, sin botón de retroceso). Una consulta GET es mucho mejor para ..., bueno, consultas. Solo use POST cuando realmente esté cambiando algo (como la actualización de un registro de la base de datos), lo cual no debería permitirse hacer dos veces. – falstro

+1

Además, no enviar una URL a un amigo/colega/etc. por mensajería instantánea o correo electrónico, eso es algo que realmente me molesta. :) – falstro

1

me o bien usar algo como:

http://www.mytimesheet.com/start/11-1-2009/end/11-14-2009 

o

http://www.mytimesheet.com?start=11-1-2009&end=11-14-2009 

Pero, según dice daniel, podrías convertir esto en una publicación para que lo ocultes por completo, si eso es posible.

2

yo diría que depende de ti, pero me gusta la idea de

http://foo.com/bar/from/2008/ 
http://foo.com/bar/from/2008/10/ 
http://foo.com/bar/from/2008/10/02 

O bien, se puede combinar con algo como /between/2008/10/2009/10 y tal.

+0

Prefiero este método, ya que hace que la dirección sea mucho más 'legible/explorable por humanos' –

+0

Me gustaría ofrecer una preferencia alternativa a: 'http://foo.com/bar/from/2014-09- 01/'. Implica una fecha similar a la forma escrita. ¿Dirías que es más legible para los humanos? – Glycerine

Cuestiones relacionadas